Ghost/core/server/data/schema/default-settings.json

120 lines
2.9 KiB
JSON
Raw Normal View History

{
"core": {
"db_hash": {
"defaultValue": null
},
"next_update_check": {
"defaultValue": null
},
Update Notification improvements (#9123) closes #5071 - Remove hardcoded notification in admin controller - NOTE: update check notifications are no longer blocking the admin rendering - this is one of the most import changes - we remove the hardcoded release message - we also remove adding a notification manually in here, because this will work differently from now on -> you receive a notification (release or custom) in the update check module and this module adds the notification as is to our database - Change default core settings keys - remove displayUpdateNotification -> this was used to store the release version number send from the UCS -> based on this value, Ghost creates a notification container with self defined values -> not needed anymore - rename seenNotifications to notifications -> the new notifications key will hold both 1. the notification from the USC 2. the information about if a notification was seen or not - this key hold only one release notification - and n custom notifications - Update Check Module: Request to the USC depends on the privacy configuration - useUpdateCheck: true -> does a checkin in the USC (exposes data) - useUpdateCheck: false -> does only a GET query to the USC (does not expose any data) - make the request handling dynamic, so it depends on the flag - add an extra logic to be able to define a custom USC endpoint (helpful for testing) - add an extra logic to be able to force the request to the service (helpful for testing) - Update check module: re-work condition when a check should happen - only if the env is not correct - remove deprecated config.updateCheck - remove isPrivacyDisabled check (handled differently now, explained in last commit) - Update check module: remove `showUpdateNotification` and readability - showUpdateNotification was used in the admin controller to fetch the latest release version number from the db - no need to check against semver in general, the USC takes care of that (no need to double check) - improve readability of `nextUpdateCheck` condition - Update check module: refactor `updateCheckResponse` - remove db call to displayUpdateNotification, not used anymore - support receiving multiple custom notifications - support custom notification groups - the default group is `all` - this will always be consumed - groups can be extended via config e.g. `notificationGroups: ['migration']` - Update check module: refactor createCustomNotification helper - get rid of taking over notification duplication handling (this is not the task of the update check module) - ensure we have good fallback values for non present attributes in a notification - get rid of semver check (happens in the USC) - could be reconsidered later if LTS is gone - Refactor notification API - reason: get rid of in process notification store -> this was an object hold in process -> everything get's lost after restart -> not helpful anymore, because imagine the following case -> you get a notification -> you store it in process -> you mark this notification as seen -> you restart Ghost, you will receive the same notification on the next check again -> because we are no longer have a separate seen notifications object - use database settings key `notification` instead - refactor all api endpoints to support reading and storing into the `notifications` object - most important: notification deletion happens via a `seen` property (the notification get's physically deleted 3 month automatically) -> we have to remember a seen property, because otherwise you don't know which notification was already received/seen - Add listener to remove seen notifications automatically after 3 month - i just decided for 3 month (we can decrease?) - at the end it doesn't really matter, as long as the windows is not tooooo short - listen on updates for the notifications settings - check if notification was seen and is older than 3 month - ignore release notification - Updated our privacy document - Updated docs.ghost.org for privacy config behaviour - contains a migration script to remove old settings keys
2018-01-09 17:20:00 +03:00
"notifications": {
"defaultValue": "[]"
}
},
"blog": {
"title": {
"defaultValue": "Ghost",
"validations": {
"isLength": {
"max": 150
}
}
},
"description": {
"defaultValue": "The professional publishing platform",
"validations": {
"isLength": {
"max": 200
}
}
},
"logo": {
"defaultValue": "https://casper.ghost.org/v1.0.0/images/ghost-logo.svg"
},
"cover_image": {
"defaultValue": "https://casper.ghost.org/v1.0.0/images/blog-cover.jpg"
},
"icon": {
"defaultValue": ""
},
"default_locale": {
"defaultValue": "en",
"validations": {
"isEmpty": false
}
},
"active_timezone": {
"defaultValue": "Etc/UTC",
timezones: Always use the timezone of blog setting closes #6406 - adding timeZone Service to get the offset (=timezone reg. moment-timezone) overall available - new publishedAtOffset date as CP using timeZone service and moment-timezone to calculate offset incl. DST - removing timezone-obj transform as it became obsolete with moment-timezone - reading timezones from configuration/timezones api endpoint - adding a moment-utc transform to only work with utc times in backend - when switching the timezone in the select box, the user will be shown the local time of the selected timezone - added clock service to show actual time ticking below select box - default timezone is '(GMT) Greenwich Mean Time : Dublin, Edinburgh, London' - if no timezone is saved in the settings yet, the default value will be used - showing local time in 'Publish Date' when it's a draft and no actual publishedAt value exists - Removed the format 'DD MMM YY @ HH:mm (UTC Z)' which resolves to '01 Jan 16 @ 14:00 (UTC +02:00)' - Changing the date.js helper in core/server for moment-timezone - Fix timezone select: updates `selectedTimezone` to return the matching object from `availableTimezones` - Including timezones in test for date-helper - update to moment-timezone 0.5.1 - moving form-group of 'selectTimezone' further up so - Tests: - Set except for clock service in test env - adding fixtures to mirage - adding 'service.ajax' to navigation-test.js - adding 'service:ghostPaths' to navigation-test.js - Code improvements - Changing clockservice to ES6
2016-02-02 10:04:40 +03:00
"validations": {
"isTimezone": true,
"isEmpty": false
timezones: Always use the timezone of blog setting closes #6406 - adding timeZone Service to get the offset (=timezone reg. moment-timezone) overall available - new publishedAtOffset date as CP using timeZone service and moment-timezone to calculate offset incl. DST - removing timezone-obj transform as it became obsolete with moment-timezone - reading timezones from configuration/timezones api endpoint - adding a moment-utc transform to only work with utc times in backend - when switching the timezone in the select box, the user will be shown the local time of the selected timezone - added clock service to show actual time ticking below select box - default timezone is '(GMT) Greenwich Mean Time : Dublin, Edinburgh, London' - if no timezone is saved in the settings yet, the default value will be used - showing local time in 'Publish Date' when it's a draft and no actual publishedAt value exists - Removed the format 'DD MMM YY @ HH:mm (UTC Z)' which resolves to '01 Jan 16 @ 14:00 (UTC +02:00)' - Changing the date.js helper in core/server for moment-timezone - Fix timezone select: updates `selectedTimezone` to return the matching object from `availableTimezones` - Including timezones in test for date-helper - update to moment-timezone 0.5.1 - moving form-group of 'selectTimezone' further up so - Tests: - Set except for clock service in test env - adding fixtures to mirage - adding 'service.ajax' to navigation-test.js - adding 'service:ghostPaths' to navigation-test.js - Code improvements - Changing clockservice to ES6
2016-02-02 10:04:40 +03:00
}
},
"force_i18n": {
"defaultValue": "true",
"validations": {
"isEmpty": false,
"isIn": [["true", "false"]]
}
2013-11-21 22:44:18 +04:00
},
"permalinks": {
"defaultValue": "/:slug/",
"validations": {
"matches": "^(\/:?[a-z0-9_-]+){1,5}\/$",
"matches": "(:id|:slug|:year|:month|:day|:author|:primary_tag)",
2013-11-21 22:44:18 +04:00
"notContains": "/ghost/"
}
},
"amp": {
"defaultValue" : "true"
},
"ghost_head": {
"defaultValue" : ""
},
"ghost_foot": {
"defaultValue" : ""
2014-12-14 20:56:04 +03:00
},
"facebook": {
"defaultValue" : ""
},
"twitter": {
"defaultValue" : ""
},
2014-12-14 20:56:04 +03:00
"labs": {
"defaultValue": "{\"publicAPI\": true}"
},
"navigation": {
2015-02-25 20:20:42 +03:00
"defaultValue": "[{\"label\":\"Home\", \"url\":\"/\"}]"
},
"slack": {
"defaultValue": "[{\"url\":\"\"}]"
},
"unsplash": {
"defaultValue": "{\"isActive\": true}"
}
},
"theme": {
"active_theme": {
"defaultValue": "casper"
}
},
2014-01-21 12:45:27 +04:00
"app": {
"active_apps": {
"defaultValue": "[]"
},
"installed_apps": {
"defaultValue": "[]"
}
},
"private": {
"is_private": {
"defaultValue": "false"
},
"password": {
"defaultValue": ""
},
"public_hash": {
"defaultValue": null
}
}
}