'app_logo' => 'Application Logo',
'app_logo_desc' => 'This image should be 43px in height. <br>Large images will be scaled down.',
'app_primary_color' => 'Application Primary Color',
- 'app_primary_color_desc' => 'This should be a hex value. <br>Leave empty to reset to the default color.',
+ 'app_primary_color_desc' => 'Sets the primary color for the application including the banner, buttons, and links.',
'app_homepage' => 'Application Homepage',
'app_homepage_desc' => 'Select a view to show on the homepage instead of the default view. Page permissions are ignored for selected pages.',
'app_homepage_select' => 'Select a page',
'app_disable_comments_toggle' => 'Disable comments',
'app_disable_comments_desc' => 'Disables comments across all pages in the application. <br> Existing comments are not shown.',
+ // Color settings
+ 'content_colors' => 'Content Colors',
+ 'content_colors_desc' => 'Sets colors for all elements in the page organisation hierarchy. Choosing colors with a similar brightness to the default colors is recommended for readability.',
+ 'bookshelf_color' => 'Shelf Color',
+ 'book_color' => 'Book Color',
+ 'chapter_color' => 'Chapter Color',
+ 'page_color' => 'Page Color',
+ 'page_draft_color' => 'Page Draft Color',
+
// Registration Settings
'reg_settings' => 'Registration',
'reg_enable' => 'Enable Registration',
'reg_enable_toggle' => 'Enable registration',
'reg_enable_desc' => 'When registration is enabled user will be able to sign themselves up as an application user. Upon registration they are given a single, default user role.',
'reg_default_role' => 'Default user role after registration',
+ 'reg_enable_external_warning' => 'The option above is ignored while external LDAP or SAML authentication is active. User accounts for non-existing members will be auto-created if authentication, against the external system in use, is successful.',
'reg_email_confirmation' => 'Email Confirmation',
'reg_email_confirmation_toggle' => 'Require email confirmation',
'reg_confirm_email_desc' => 'If domain restriction is used then email confirmation will be required and this option will be ignored.',
'maint' => 'Maintenance',
'maint_image_cleanup' => 'Cleanup Images',
'maint_image_cleanup_desc' => "Scans page & revision content to check which images and drawings are currently in use and which images are redundant. Ensure you create a full database and image backup before running this.",
- 'maint_image_cleanup_ignore_revisions' => 'Ignore images in revisions',
+ 'maint_delete_images_only_in_revisions' => 'Also delete images that only exist in old page revisions',
'maint_image_cleanup_run' => 'Run Cleanup',
'maint_image_cleanup_warning' => ':count potentially unused images were found. Are you sure you want to delete these images?',
'maint_image_cleanup_success' => ':count potentially unused images found and deleted!',
'maint_image_cleanup_nothing_found' => 'No unused images found, Nothing deleted!',
- 'maint_send_test_email' => 'Send a Test E-Mail',
- 'maint_send_test_email_desc' => 'This sends a test e-mail to your e-mail address specified in your profile.',
- 'maint_send_test_email_run' => 'Send test e-mail',
- 'maint_send_test_email_success' => 'E-Mail sent to :address',
- 'maint_send_test_email_mail_subject' => 'Test E-Mail',
- 'maint_send_test_email_mail_greeting' => 'E-Mail delivery seems to work!',
- 'maint_send_test_email_mail_text' => 'Congratulations! As you received this e-mail notification, your e-mail settings seem to be configured properly.',
+ 'maint_send_test_email' => 'Send a Test Email',
+ 'maint_send_test_email_desc' => 'This sends a test email to your email address specified in your profile.',
+ 'maint_send_test_email_run' => 'Send test email',
+ 'maint_send_test_email_success' => 'Email sent to :address',
+ 'maint_send_test_email_mail_subject' => 'Test Email',
+ 'maint_send_test_email_mail_greeting' => 'Email delivery seems to work!',
+ 'maint_send_test_email_mail_text' => 'Congratulations! As you received this email notification, your email settings seem to be configured properly.',
+ 'maint_recycle_bin_desc' => 'Deleted shelves, books, chapters & pages are sent to the recycle bin so they can be restored or permanently deleted. Older items in the recycle bin may be automatically removed after a while depending on system configuration.',
+ 'maint_recycle_bin_open' => 'Open Recycle Bin',
+
+ // Recycle Bin
+ 'recycle_bin' => 'Recycle Bin',
+ 'recycle_bin_desc' => 'Here you can restore items that have been deleted or choose to permanently remove them from the system. This list is unfiltered unlike similar activity lists in the system where permission filters are applied.',
+ 'recycle_bin_deleted_item' => 'Deleted Item',
+ 'recycle_bin_deleted_by' => 'Deleted By',
+ 'recycle_bin_deleted_at' => 'Deletion Time',
+ 'recycle_bin_permanently_delete' => 'Permanently Delete',
+ 'recycle_bin_restore' => 'Restore',
+ 'recycle_bin_contents_empty' => 'The recycle bin is currently empty',
+ 'recycle_bin_empty' => 'Empty Recycle Bin',
+ 'recycle_bin_empty_confirm' => 'This will permanently destroy all items in the recycle bin including content contained within each item. Are you sure you want to empty the recycle bin?',
+ 'recycle_bin_destroy_confirm' => 'This action will permanently delete this item, along with any child elements listed below, from the system and you will not be able to restore this content. Are you sure you want to permanently delete this item?',
+ 'recycle_bin_destroy_list' => 'Items to be Destroyed',
+ 'recycle_bin_restore_list' => 'Items to be Restored',
+ 'recycle_bin_restore_confirm' => 'This action will restore the deleted item, including any child elements, to their original location. If the original location has since been deleted, and is now in the recycle bin, the parent item will also need to be restored.',
+ 'recycle_bin_restore_deleted_parent' => 'The parent of this item has also been deleted. These will remain deleted until that parent is also restored.',
+ 'recycle_bin_destroy_notification' => 'Deleted :count total items from the recycle bin.',
+ 'recycle_bin_restore_notification' => 'Restored :count total items from the recycle bin.',
+
+ // Audit Log
+ 'audit' => 'Audit Log',
+ 'audit_desc' => 'This audit log displays a list of activities tracked in the system. This list is unfiltered unlike similar activity lists in the system where permission filters are applied.',
+ 'audit_event_filter' => 'Event Filter',
+ 'audit_event_filter_no_filter' => 'No Filter',
+ 'audit_deleted_item' => 'Deleted Item',
+ 'audit_deleted_item_name' => 'Name: :name',
+ 'audit_table_user' => 'User',
+ 'audit_table_event' => 'Event',
+ 'audit_table_related' => 'Related Item or Detail',
+ 'audit_table_date' => 'Activity Date',
+ 'audit_date_from' => 'Date Range From',
+ 'audit_date_to' => 'Date Range To',
// Role Settings
'roles' => 'Roles',
'role_manage_entity_permissions' => 'Manage all book, chapter & page permissions',
'role_manage_own_entity_permissions' => 'Manage permissions on own book, chapter & pages',
'role_manage_page_templates' => 'Manage page templates',
+ 'role_access_api' => 'Access system API',
'role_manage_settings' => 'Manage app settings',
'role_asset' => 'Asset Permissions',
+ 'roles_system_warning' => 'Be aware that access to any of the above three permissions can allow a user to alter their own privileges or the privileges of others in the system. Only assign roles with these permissions to trusted users.',
'role_asset_desc' => 'These permissions control default access to the assets within the system. Permissions on Books, Chapters and Pages will override these permissions.',
'role_asset_admins' => 'Admins are automatically given access to all content but these options may show or hide UI options.',
'role_all' => 'All',
'user_profile' => 'User Profile',
'users_add_new' => 'Add New User',
'users_search' => 'Search Users',
+ 'users_latest_activity' => 'Latest Activity',
'users_details' => 'User Details',
'users_details_desc' => 'Set a display name and an email address for this user. The email address will be used for logging into the application.',
'users_details_desc_no_email' => 'Set a display name for this user so others can recognise them.',
'users_send_invite_text' => 'You can choose to send this user an invitation email which allows them to set their own password otherwise you can set their password yourself.',
'users_send_invite_option' => 'Send user invite email',
'users_external_auth_id' => 'External Authentication ID',
- 'users_external_auth_id_desc' => 'This is the ID used to match this user when communicating with your LDAP system.',
+ 'users_external_auth_id_desc' => 'This is the ID used to match this user when communicating with your external authentication system.',
'users_password_warning' => 'Only fill the below if you would like to change your password.',
'users_system_public' => 'This user represents any guest users that visit your instance. It cannot be used to log in but is assigned automatically.',
'users_delete' => 'Delete User',
'users_delete_named' => 'Delete user :userName',
'users_delete_warning' => 'This will fully delete this user with the name \':userName\' from the system.',
'users_delete_confirm' => 'Are you sure you want to delete this user?',
- 'users_delete_success' => 'Users successfully removed',
+ 'users_migrate_ownership' => 'Migrate Ownership',
+ 'users_migrate_ownership_desc' => 'Select a user here if you want another user to become the owner of all items currently owned by this user.',
+ 'users_none_selected' => 'No user selected',
+ 'users_delete_success' => 'User successfully removed',
'users_edit' => 'Edit User',
'users_edit_profile' => 'Edit Profile',
'users_edit_success' => 'User successfully updated',
'users_social_disconnect' => 'Disconnect Account',
'users_social_connected' => ':socialAccount account was successfully attached to your profile.',
'users_social_disconnected' => ':socialAccount account was successfully disconnected from your profile.',
+ 'users_api_tokens' => 'API Tokens',
+ 'users_api_tokens_none' => 'No API tokens have been created for this user',
+ 'users_api_tokens_create' => 'Create Token',
+ 'users_api_tokens_expires' => 'Expires',
+ 'users_api_tokens_docs' => 'API Documentation',
+
+ // API Tokens
+ 'user_api_token_create' => 'Create API Token',
+ 'user_api_token_name' => 'Name',
+ 'user_api_token_name_desc' => 'Give your token a readable name as a future reminder of its intended purpose.',
+ 'user_api_token_expiry' => 'Expiry Date',
+ 'user_api_token_expiry_desc' => 'Set a date at which this token expires. After this date, requests made using this token will no longer work. Leaving this field blank will set an expiry 100 years into the future.',
+ 'user_api_token_create_secret_message' => 'Immediately after creating this token a "Token ID" & "Token Secret" will be generated and displayed. The secret will only be shown a single time so be sure to copy the value to somewhere safe and secure before proceeding.',
+ 'user_api_token_create_success' => 'API token successfully created',
+ 'user_api_token_update_success' => 'API token successfully updated',
+ 'user_api_token' => 'API Token',
+ 'user_api_token_id' => 'Token ID',
+ 'user_api_token_id_desc' => 'This is a non-editable system generated identifier for this token which will need to be provided in API requests.',
+ 'user_api_token_secret' => 'Token Secret',
+ 'user_api_token_secret_desc' => 'This is a system generated secret for this token which will need to be provided in API requests. This will only be displayed this one time so copy this value to somewhere safe and secure.',
+ 'user_api_token_created' => 'Token created :timeAgo',
+ 'user_api_token_updated' => 'Token updated :timeAgo',
+ 'user_api_token_delete' => 'Delete Token',
+ 'user_api_token_delete_warning' => 'This will fully delete this API token with the name \':tokenName\' from the system.',
+ 'user_api_token_delete_confirm' => 'Are you sure you want to delete this API token?',
+ 'user_api_token_delete_success' => 'API token successfully deleted',
- //! Since these labels are already localized this array does not need to be
- //! translated in the language-specific files.
- //! DELETE BELOW IF COPIED FROM EN
+ //! If editing translations files directly please ignore this in all
+ //! languages apart from en. Content will be auto-copied from en.
//!////////////////////////////////
'language_select' => [
'en' => 'English',
'ar' => 'العربية',
+ 'bg' => 'Bǎlgarski',
+ 'cs' => 'Česky',
+ 'da' => 'Dansk',
'de' => 'Deutsch (Sie)',
'de_informal' => 'Deutsch (Du)',
'es' => 'Español',
'es_AR' => 'Español Argentina',
'fr' => 'Français',
+ 'he' => 'עברית',
+ 'hu' => 'Magyar',
+ 'it' => 'Italian',
+ 'ja' => '日本語',
+ 'ko' => '한국어',
'nl' => 'Nederlands',
+ 'nb' => 'Norsk (Bokmål)',
+ 'pl' => 'Polski',
'pt_BR' => 'Português do Brasil',
+ 'ru' => 'Русский',
'sk' => 'Slovensky',
- 'cs' => 'Česky',
+ 'sl' => 'Slovenščina',
'sv' => 'Svenska',
- 'kr' => '한국어',
- 'ja' => '日本語',
- 'pl' => 'Polski',
- 'it' => 'Italian',
- 'ru' => 'Русский',
+ 'tr' => 'Türkçe',
'uk' => 'Українська',
+ 'vi' => 'Tiếng Việt',
'zh_CN' => '简体中文',
- 'zh_TW' => '繁體中文',
- 'hu' => 'Magyar'
+ 'zh_TW' => '繁體中文',
]
//!////////////////////////////////
];