OpenProject is the leading open source project management software.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
openproject/config/locales/en.yml

3119 lines
149 KiB

#-- copyright
# OpenProject is an open source project management software.
# Copyright (C) 2012-2021 the OpenProject GmbH
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License version 3.
#
# OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows:
# Copyright (C) 2006-2013 Jean-Philippe Lang
# Copyright (C) 2010-2013 the ChiliProject Team
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#
# See COPYRIGHT and LICENSE files for more details.
#++
en:
no_results_title_text: There is currently nothing to display.
activities:
index:
no_results_title_text: There has not been any activity for the project within this time frame.
admin:
plugins:
no_results_title_text: There are currently no plugins available.
custom_styles:
color_theme: "Color theme"
color_theme_custom: "(Custom)"
colors:
alternative-color: "Alternative"
content-link-color: "Link font"
primary-color: "Primary"
primary-color-dark: "Primary (dark)"
header-bg-color: "Header background"
header-item-bg-hover-color: "Header background on hover"
header-item-font-color: "Header font"
header-item-font-hover-color: "Header font on hover"
header-border-bottom-color: "Header border"
main-menu-bg-color: "Main menu background"
main-menu-bg-selected-background: "Main menu when selected"
main-menu-bg-hover-background: "Main menu on hover"
main-menu-font-color: "Main menu font"
main-menu-selected-font-color: "Main menu font when selected"
main-menu-hover-font-color: "Main menu font on hover"
main-menu-border-color: "Main menu border"
custom_colors: "Custom colors"
customize: "Customize your OpenProject installation with your own logo. Note: This logo will be publicly accessible."
enterprise_notice: "As a special 'Thank you!' for their financial contribution to develop OpenProject, this tiny feature is only available for Enterprise Edition support subscribers."
manage_colors: "Edit color select options"
instructions:
alternative-color: "Strong accent color, typically used for the most important button on a screen."
content-link-color: "Font color of most of the links."
primary-color: "Main color."
primary-color-dark: "Typically a darker version of the main color used for hover effects."
header-item-bg-hover-color: "Background color of clickable header items when hovered with the mouse."
header-item-font-color: "Font color of clickable header items."
header-item-font-hover-color: "Font color of clickable header items when hovered with the mouse."
header-border-bottom-color: "Thin line under the header. Leave this field empty if you don't want any line."
main-menu-bg-color: "Left side menu's background color."
theme_warning: Changing the theme will overwrite you custom style. The design will then be lost. Are you sure you want to continue?
enterprise:
5 years ago
upgrade_to_ee: "Upgrade to the Enterprise Edition"
add_token: "Upload an Enterprise Edition support token"
replace_token: "Replace your current support token"
order: "Order Enterprise on-premises Edition"
paste: "Paste your Enterprise Edition support token"
required_for_feature: "This feature is only available with an active Enterprise Edition support token."
enterprise_link: "For more information, click here."
start_trial: 'Start free trial'
book_now: 'Book now'
get_quote: 'Get a quote'
announcements:
show_until: Show until
is_active: currently displayed
is_inactive: currently not displayed
attribute_help_texts:
note_public: 'Any text and images you add to this field is publicly visible to all logged in users!'
text_overview: 'In this view, you can create custom help texts for attributes view. When defined, these texts can be shown by clicking the help icon next to its belonging attribute.'
label_plural: 'Attribute help texts'
show_preview: 'Preview text'
add_new: 'Add help text'
edit: "Edit help text for %{attribute_caption}"
auth_sources:
index:
no_results_content_title: There are currently no authentication modes.
no_results_content_text: Create a new authentication mode
background_jobs:
status:
error_requeue: "Job experienced an error but is retrying. The error was: %{message}"
cancelled_due_to: "Job was cancelled due to error: %{message}"
ldap_auth_sources:
technical_warning_html: |
This LDAP form requires technical knowledge of your LDAP / Active Directory setup.
<br/>
<a href="https://www.openproject.org/help/administration/manage-ldap-authentication/">Please visit our documentation for detailed instructions</a>.
attribute_texts:
name: Arbitrary name of the LDAP connection
host: LDAP host name or IP address
login_map: The attribute key in LDAP that is used to identify the unique user login. Usually, this will be `uid` or `samAccountName`.
generic_map: The attribute key in LDAP that is mapped to the OpenProject `%{attribute}` attribute
admin_map_html: "Optional: The attribute key in LDAP that <strong>if present</strong> marks the OpenProject user an admin. Leave empty when in doubt."
system_user_dn_html: |
Enter the DN of the system user used for read-only access.
<br/>
Example: uid=openproject,ou=system,dc=example,dc=com
system_user_password: Enter the bind password of the system user
base_dn: |
Enter the Base DN of the subtree in LDAP you want OpenProject to look for users and groups.
OpenProject will filter for provided usernames in this subtree only.
Example: ou=users,dc=example,dc=com
filter_string: |
Add an optional RFC4515 filter to apply to the results returned for users filtered in the LDAP.
This can be used to restrict the set of users that are found by OpenProject for authentication and group synchronization.
filter_string_concat: |
OpenProject will always filter for the login attribute provided by the user to identify the record. If you provide a filter here,
it will be concatenated with an AND. By default, a catch-all (objectClass=*) will be used as a filter.
onthefly_register: |
If you check this box, OpenProject will automatically create new users from their LDAP entries
when they first authenticate with OpenProject.
Leave this unchecked to only allow existing accounts in OpenProject to authenticate through LDAP!
connection_encryption: 'Connection encryption'
system_account: 'System account'
system_account_legend: |
OpenProject requires read-only access through a system account to lookup users and groups in your LDAP tree.
Please specify the bind credentials for that system user in the following section.
ldap_details: 'LDAP details'
user_settings: 'Attribute mapping'
user_settings_legend: |
The following fields are related to how users are created in OpenProject from LDAP entries and
what LDAP attributes are used to define the attributes of an OpenProject user (attribute mapping).
tls_mode:
plain: 'none'
simple_tls: 'simple_tls'
start_tls: 'start_tls'
plain_description: "Plain unencrypted connection, no TLS negotiation."
simple_tls_description: "Implicit TLS encryption, but no certificate validation. Use with caution and implicit trust of the LDAP connection."
start_tls_description: "Explicit TLS encryption with full validation. Use for LDAP over TLS/SSL."
section_more_info_link_html: >
This section concerns the connection security of this LDAP authentication source.
For more information, visit <a href="%{link}">the Net::LDAP documentation</a>.
forums:
show:
no_results_title_text: There are currently no posts for the forum.
colors:
6 years ago
index:
no_results_title_text: There are currently no colors.
no_results_content_text: Create a new color
label_no_color: 'No color'
custom_actions:
actions:
name: 'Actions'
add: 'Add action'
assigned_to:
executing_user_value: '(Assign to executing user)'
conditions: 'Conditions'
plural: 'Custom actions'
new: 'New custom action'
edit: 'Edit custom action %{name}'
execute: 'Execute %{name}'
upsale:
title: 'Custom actions is an Enterprise Edition feature'
description: 'Custom actions streamline everyday work by combining a set of individual steps into one button.'
custom_fields:
text_add_new_custom_field: >
To add new custom fields to a project you first need to create them before
you can add them to this project.
is_enabled_globally: 'Is enabled globally'
enabled_in_project: 'Enabled in project'
contained_in_type: 'Contained in type'
confirm_destroy_option: "Deleting an option will delete all of its occurrences (e.g. in work packages). Are you sure you want to delete it?"
reorder_alphabetical: "Reorder values alphabetically"
reorder_confirmation: "Warning: The current order of available values will be lost. Continue?"
tab:
no_results_title_text: There are currently no custom fields.
no_results_content_text: Create a new custom field
concatenation:
single: 'or'
documentation:
see_more_link: For more information, please see our documentation on this topic.
global_search:
overwritten_tabs:
wiki_pages: "Wiki"
messages: "Forum"
groups:
index:
no_results_title_text: There are currently no groups.
no_results_content_text: Create a new group
users:
no_results_title_text: There are currently no users part of this group.
memberships:
no_results_title_text: There are currently no projects part of this group.
incoming_mails:
ignore_filenames: >
Specify a list of names to ignore when processing attachments for incoming mails (e.g., signatures or icons).
Enter one filename per line.
projects:
delete:
scheduled: "Deletion has been scheduled and is performed in the background. You will be notified of the result."
schedule_failed: "Project cannot be deleted: %{errors}"
failed: "Deletion of project %{name} has failed"
failed_text: "The request to delete project %{name} has failed. The project was left archived."
completed: "Deletion of project %{name} completed"
completed_text: "The request to delete project '%{name}' has been completed."
index:
open_as_gantt: 'Open as Gantt view'
open_as_gantt_title: "Use this button to generate a Gantt view that filters work packages for the projects visible on this page."
open_as_gantt_title_admin: "You can modify the view settings (such as selected work package types) in the administration under project settings."
no_results_title_text: There are currently no projects
no_results_content_text: Create a new project
settings:
change_identifier: Change identifier
activities:
no_results_title_text: There are currently no activities available.
forums:
no_results_title_text: There are currently no forums for the project.
no_results_content_text: Create a new forum
categories:
no_results_title_text: There are currently no work package categories.
no_results_content_text: Create a new work package category
custom_fields:
no_results_title_text: There are currently no custom fields available.
types:
no_results_title_text: There are currently no types available.
versions:
no_results_title_text: There are currently no versions for the project.
no_results_content_text: Create a new version
storage:
no_results_title_text: There is no additional recorded disk space consumed by this project.
members:
index:
no_results_title_text: There are currently no members part of this project.
no_results_content_text: Add a member to the project
invite_by_mail: "Send invite to %{mail}"
my:
access_token:
failed_to_reset_token: "Failed to reset access token: %{error}"
notice_reset_token: "A new %{type} token has been generated. Your access token is:"
token_value_warning: "Note: This is the only time you will see this token, make sure to copy it now."
no_results_title_text: There are currently no access tokens available.
news:
index:
no_results_title_text: There is currently no news to report.
no_results_content_text: Add a news item
users:
groups:
member_in_these_groups: 'This user is currently a member of the following groups:'
no_results_title_text: This user is currently not a member in any group.
memberships:
no_results_title_text: This user is currently not a member of a project.
placeholder_users:
right_to_manage_members_missing: >
You are not allowed to delete the placeholder user.
You do not have the right to manage members for all projects that the placeholder user is a member of.
delete_tooltip: "Delete placeholder user"
deletion_info:
heading: "Delete placeholder user %{name}"
data_consequences: >
All occurrences of the placeholder user (e.g., as assignee, responsible or other user values)
will be reassigned to an account called "Deleted user".
As the data of every deleted account is reassigned to this account
it will not be possible to distinguish the data the user created from
the data of another deleted account.
irreversible: "This action is irreversible"
confirmation: "Enter the placeholder user name %{name} to confirm the deletion."
upsale:
title: Assign work to people that are not members of the project.
description: >
There are multiple scenarios where you want to assign work to people that are not member of your project.
It could simply be that you still need to hire the correct person for the job. Or you just don't want to give
that person access to the project's information but still want track tasks assigned to that person.
prioritiies:
edit:
priority_color_text: |
Click to assign or change the color of this priority.
It can be used for highlighting work packages in the table.
reportings:
index:
no_results_title_text: There are currently no status reportings.
no_results_content_text: Add a status reporting
statuses:
edit:
status_readonly_html: |
Check this option to mark work packages with this status as read-only.
No attributes can be changed with the exception of the status.
<br/>
<strong>Note</strong>: Inherited values (e.g., from children or relations) will still apply.
status_color_text: |
Click to assign or change the color of this status.
It is shown in the status button and can be used for highlighting work packages in the table.
index:
no_results_title_text: There are currently no work package statuses.
no_results_content_text: Add a new status
types:
index:
no_results_title_text: There are currently no types.
no_results_content_text: Create a new type
edit:
settings: "Settings"
form_configuration: "Form configuration"
projects: "Projects"
enabled_projects: "Enabled projects"
Add relations tables to Types via form configuration (#6773) * WIP: PrecedesFilter and FollowsFilter for WorkPackages * Create Type Form Groups per Query Type * generalize filters on relations avoiding alias * fix flickering spec * Rename dependency represeners for Follower and Predecessor Filters * Allow configuring templated queries within query configuring modal * Use `{id}` as templated value, instead of a now deprecated `templated` string * Rewrite ParentFilter to follow same structure as other relation filters. * Set Follower and Predecessor filters as hidden in Frontend * Default query shall show closed WPs, too * Remove relation filter type selection from form configuration view as we extend query configuration modal instead. * Allow ExternalQueryConfiguration to be more specific and prepend relation filters in its modal. * Quick unrelated fix on the way: the instruction text should start below the columns input and not to the right of it * - Add all missing relation filters. - Use verbs for naming instead of nouns to stay consistent with UI. * fix typo * Add relation filters to hidden filters and fix a rebase bug * Typo in docs * Fix broken rebase conflict resolution * Add part of and includes filter * adding specs for relation filters * rename RelatesFilter to RelatesToFilter * Rename shared example as direction does not matter anymore. * Fix spec for IncludesFilter * Fix name conflict for `includes` by calling typed_dag's `direct` later. * Fix shared filter examples as the parent filter does not get added per default anymore. * Fix spec after renaming PredecessorFilter to PrecedesFilter * Fix integration spec for type configuration form * Add filter dependency specs * Differentiate between WorkPackageFormChildrenQueryGroup and WorkPackageRelationQueryGroup types * Create inline-create for relation tables * Rewrite filters to use actual relation_type as key * Reload relations on change, change symbols * Fix relation filter i18n strings * Test presence of all relation filters frontend. * Extend integration test for form configuration to not only cover hierarchy, but also undirectional and directional relation types. * Consistent naming of filter dependency representer files * Satisfy codeclimate * Add missing copyright notes * Fixing PartofFilter and its specs * Reverse relation direction when created inline * WIP integration test for Relation Query Component and Children Query Component. * Correctly reload children tables when refreshed * Fix FilterOnUndirectedMixin * Fix removing of relation from embedded table after reload * Adding intergration tests for removing and adding relation or children, initiated form either embedded table or relations tab. * Fix specs * Fix implementation of duplicates and duplicated They are reversed in typed_dag and causes confusion [ci skip]
6 years ago
edit_query: "Edit table"
query_group_placeholder: "Give the table a name"
reset: "Reset to defaults"
type_color_text: |
6 years ago
Click to assign or change the color of this type. The selected color distinguishes work packages
in Gantt charts. It is therefore recommended to use a strong color.
versions:
overview:
no_results_title_text: There are currently no work packages assigned to this version.
wiki:
page_not_editable_index: The requested page does not (yet) exist. You have been redirected to the index of all wiki pages.
no_results_title_text: There are currently no wiki pages.
index:
no_results_content_text: Add a new wiki page
work_flows:
index:
no_results_title_text: There are currently no workflows.
work_packages:
x_descendants:
one: 'One descendant work package'
other: '%{count} work package descendants'
bulk:
could_not_be_saved: "The following work packages could not be saved:"
move:
no_common_statuses_exists: "There is no status available for all selected work packages. Their status cannot be changed."
unsupported_for_multiple_projects: 'Bulk move/copy is not supported for work packages from multiple projects'
summary:
reports:
category:
no_results_title_text: There are currently no categories available.
assigned_to:
no_results_title_text: There are currently no members part of this project.
responsible:
no_results_title_text: There are currently no members part of this project.
author:
no_results_title_text: There are currently no members part of this project.
priority:
no_results_title_text: There are currently no priorities available.
type:
no_results_title_text: There are currently no types available.
version:
no_results_title_text: There are currently no versions available.
label_invitation: Invitation
account:
delete: "Delete account"
delete_confirmation: "Are you sure you want to delete the account?"
deleted: "Account successfully deleted"
deletion_info:
data_consequences:
other: "Of the data the user created (e.g. email, preferences, work packages, wiki entries) as much as possible will be deleted. Note however, that data like work packages and wiki entries can not be deleted without impeding the work of the other users. Such data is hence reassigned to an account called \"Deleted user\". As the data of every deleted account is reassigned to this account it will not be possible to distinguish the data the user created from the data of another deleted account."
self: "Of the data you created (e.g. email, preferences, work packages, wiki entries) as much as possible will be deleted. Note however, that data like work packages and wiki entries can not be deleted without impeding the work of the other users. Such data is hence reassigned to an account called \"Deleted user\". As the data of every deleted account is reassigned to this account it will not be possible to distinguish the data you created from the data of another deleted account."
heading: "Delete account %{name}"
info:
other: "Deleting the user account is an irreversible action."
self: "Deleting your user account is an irreversible action."
login_consequences:
other: "The account will be deleted from the system. Therefore, the user will no longer be able to log in with his current credentials. He/she can choose to become a user of this application again by the means this application grants."
self: "Your account will be deleted from the system. Therefore, you will no longer be able to log in with your current credentials. If you choose to become a user of this application again, you can do so by using the means this application grants."
login_verification:
other: "Enter the login %{name} to verify the deletion. Once submitted, you will be asked to confirm your password."
self: "Enter your login %{name} to verify the deletion. Once submitted, you will be asked to confirm your password."
error_inactive_activation_by_mail: >
Your account has not yet been activated.
To activate your account, click on the link that was emailed to you.
error_inactive_manual_activation: >
Your account has not yet been activated.
Please wait for an administrator to activate your account.
error_self_registration_disabled: >
User registration is disabled on this system. Please ask an administrator to create an
account for you.
login_with_auth_provider: "or sign in with your existing account"
signup_with_auth_provider: "or sign up using"
auth_source_login: Please login as <em>%{login}</em> to activate your account.
omniauth_login: Please login to activate your account.
actionview_instancetag_blank_option: "Please select"
restructure en.yml to a better rails3'ish style We use attributes; activerecord.models; activerecord.attributes; query_fields now. All field_<something> were removed and/or renamed. Have a look at the following list of moved/renamed/removed or otherwise modified translations: **Now translated with <model>.human_attribute_name(<attribute>)** And moved from field_<something> to activerecord.attributes.<model>.<attribute> or attributes.<attribute> * field_login: Login * field_password: Password * field_password_confirmation: Confirmation * field_new_password: New password * field_firstname: First name * field_lastname: Last name * field_admin: Administrator * field_base_dn: Base DN * field_name: Name * field_mail: Email * field_author: Author * field_field_format: Format * field_value: Value * field_title: Title * field_tracker: Tracker * field_subject: Subject * field_fixed_version: Target version * field_user: User * field_parent: Subproject of * field_mail_notification: Email notifications * field_effective_date: Due date * field_type: Type * field_base: "General Error:" * field_comments: Comment * field_url: URL * field_start_page: Start page * field_hours: Hours * field_activity: Activity * field_identifier: Identifier * field_issue_to: Related issue * field_delay: Delay * field_time_entries: Log time * field_default_value: Default value * field_parent_title: Parent page * field_parent_issue: Parent task * field_custom_values: Custom fields * field_onthefly: On-the-fly user creation * field_account: Account * field_host: Host * field_port: Port * field_language: Language * field_identity_url: OpenID URL * field_created_on: Created * field_updated_on: Updated * field_status: Status * field_is_required: Required * field_is_for_all: For all projects * field_is_default: Default value * field_is_closed: Issue closed * field_is_public: Public * field_active: Active * field_done_ratio: "% Done" * field_group_by: Group results by * field_column_names: Columns * field_filesize: Size * field_last_login_on: Last connection * field_version: Version * field_priority: Priority * field_category: Category * field_assigned_to: Assignee * field_start_date: Start date * field_due_date: Due date * field_project: Project * field_estimated_hours: Estimated time * field_description: Description * field_spent_on: Date * field_issue: Issue * field_notes: Notes * field_sharing: Sharing * field_filename: File * field_impaired: Accessibility mode * field_homepage: Homepage * field_assignable: Issues can be assigned to this role * field_watcher * field_attr_firstname: Firstname attribute * field_attr_lastname: Lastname attribute * field_attr_login: Login attribute * field_attr_mail: Email attribute * field_auth_source: Authentication mode * field_comments_sorting: Display comments * field_content: Content * field_downloads: Downloads * field_editable: Editable * field_hide_mail: Hide my email address * field_is_filter: Used as a filter * field_is_in_roadmap: Issues displayed in roadmap * field_max_length: Maximum length * field_min_length: Minimum length * field_possible_values: Possible values * field_redirect_existing_links: Redirect existing links * field_regexp: Regular expression * field_role: Role * field_searchable: Searchable * field_time_zone: Time zone * field_warn_on_leaving_unsaved: "Warn me when leaving a page with * unsaved text" * field_visible: Visible * field_summary: Summary **Now translated via -> <model>.model_name.human ** And moved from field_<something> to activerecord.models.<model> * label_board: Forum * label_user: User * label_version: Version * label_tracker: Tracker * label_role: Role * label_member: Member * label_document: Document * label_issue_category: Issue category * label_issue_status: Issue status * label_group: Group * label_project * label_news: News * label_workflow: Workflow * label_custom_field: Custom field * label_attachment: File * label_comment: Comment * label_query: Custom query * label_wiki: Wiki **field_<attribute>, which were converted to label_<attribute>** * field_ui -> label_ui * field_summary -> label_workflow_summary **field_<attr>-Translations, which were moved to 'en.query_fields.<attr>** * field_member_of_group: "Assignee's group" * field_assigned_to_role: "Assignee's role" * field_subproject: Subproject **Removed translations** * field_principal: Principal * field_text: Text field * all remaining field_<attribute> translations **Added translations** * setting_ui_theme: Theme
12 years ago
activerecord:
attributes:
announcements:
show_until: "Display until"
restructure en.yml to a better rails3'ish style We use attributes; activerecord.models; activerecord.attributes; query_fields now. All field_<something> were removed and/or renamed. Have a look at the following list of moved/renamed/removed or otherwise modified translations: **Now translated with <model>.human_attribute_name(<attribute>)** And moved from field_<something> to activerecord.attributes.<model>.<attribute> or attributes.<attribute> * field_login: Login * field_password: Password * field_password_confirmation: Confirmation * field_new_password: New password * field_firstname: First name * field_lastname: Last name * field_admin: Administrator * field_base_dn: Base DN * field_name: Name * field_mail: Email * field_author: Author * field_field_format: Format * field_value: Value * field_title: Title * field_tracker: Tracker * field_subject: Subject * field_fixed_version: Target version * field_user: User * field_parent: Subproject of * field_mail_notification: Email notifications * field_effective_date: Due date * field_type: Type * field_base: "General Error:" * field_comments: Comment * field_url: URL * field_start_page: Start page * field_hours: Hours * field_activity: Activity * field_identifier: Identifier * field_issue_to: Related issue * field_delay: Delay * field_time_entries: Log time * field_default_value: Default value * field_parent_title: Parent page * field_parent_issue: Parent task * field_custom_values: Custom fields * field_onthefly: On-the-fly user creation * field_account: Account * field_host: Host * field_port: Port * field_language: Language * field_identity_url: OpenID URL * field_created_on: Created * field_updated_on: Updated * field_status: Status * field_is_required: Required * field_is_for_all: For all projects * field_is_default: Default value * field_is_closed: Issue closed * field_is_public: Public * field_active: Active * field_done_ratio: "% Done" * field_group_by: Group results by * field_column_names: Columns * field_filesize: Size * field_last_login_on: Last connection * field_version: Version * field_priority: Priority * field_category: Category * field_assigned_to: Assignee * field_start_date: Start date * field_due_date: Due date * field_project: Project * field_estimated_hours: Estimated time * field_description: Description * field_spent_on: Date * field_issue: Issue * field_notes: Notes * field_sharing: Sharing * field_filename: File * field_impaired: Accessibility mode * field_homepage: Homepage * field_assignable: Issues can be assigned to this role * field_watcher * field_attr_firstname: Firstname attribute * field_attr_lastname: Lastname attribute * field_attr_login: Login attribute * field_attr_mail: Email attribute * field_auth_source: Authentication mode * field_comments_sorting: Display comments * field_content: Content * field_downloads: Downloads * field_editable: Editable * field_hide_mail: Hide my email address * field_is_filter: Used as a filter * field_is_in_roadmap: Issues displayed in roadmap * field_max_length: Maximum length * field_min_length: Minimum length * field_possible_values: Possible values * field_redirect_existing_links: Redirect existing links * field_regexp: Regular expression * field_role: Role * field_searchable: Searchable * field_time_zone: Time zone * field_warn_on_leaving_unsaved: "Warn me when leaving a page with * unsaved text" * field_visible: Visible * field_summary: Summary **Now translated via -> <model>.model_name.human ** And moved from field_<something> to activerecord.models.<model> * label_board: Forum * label_user: User * label_version: Version * label_tracker: Tracker * label_role: Role * label_member: Member * label_document: Document * label_issue_category: Issue category * label_issue_status: Issue status * label_group: Group * label_project * label_news: News * label_workflow: Workflow * label_custom_field: Custom field * label_attachment: File * label_comment: Comment * label_query: Custom query * label_wiki: Wiki **field_<attribute>, which were converted to label_<attribute>** * field_ui -> label_ui * field_summary -> label_workflow_summary **field_<attr>-Translations, which were moved to 'en.query_fields.<attr>** * field_member_of_group: "Assignee's group" * field_assigned_to_role: "Assignee's role" * field_subproject: Subproject **Removed translations** * field_principal: Principal * field_text: Text field * all remaining field_<attribute> translations **Added translations** * setting_ui_theme: Theme
12 years ago
attachment:
7 years ago
attachment_content: "Attachment content"
attachment_file_name: "Attachment file name"
downloads: "Downloads"
file: "File"
filename: "File"
filesize: "Size"
attribute_help_text:
attribute_name: 'Attribute'
help_text: 'Help text'
restructure en.yml to a better rails3'ish style We use attributes; activerecord.models; activerecord.attributes; query_fields now. All field_<something> were removed and/or renamed. Have a look at the following list of moved/renamed/removed or otherwise modified translations: **Now translated with <model>.human_attribute_name(<attribute>)** And moved from field_<something> to activerecord.attributes.<model>.<attribute> or attributes.<attribute> * field_login: Login * field_password: Password * field_password_confirmation: Confirmation * field_new_password: New password * field_firstname: First name * field_lastname: Last name * field_admin: Administrator * field_base_dn: Base DN * field_name: Name * field_mail: Email * field_author: Author * field_field_format: Format * field_value: Value * field_title: Title * field_tracker: Tracker * field_subject: Subject * field_fixed_version: Target version * field_user: User * field_parent: Subproject of * field_mail_notification: Email notifications * field_effective_date: Due date * field_type: Type * field_base: "General Error:" * field_comments: Comment * field_url: URL * field_start_page: Start page * field_hours: Hours * field_activity: Activity * field_identifier: Identifier * field_issue_to: Related issue * field_delay: Delay * field_time_entries: Log time * field_default_value: Default value * field_parent_title: Parent page * field_parent_issue: Parent task * field_custom_values: Custom fields * field_onthefly: On-the-fly user creation * field_account: Account * field_host: Host * field_port: Port * field_language: Language * field_identity_url: OpenID URL * field_created_on: Created * field_updated_on: Updated * field_status: Status * field_is_required: Required * field_is_for_all: For all projects * field_is_default: Default value * field_is_closed: Issue closed * field_is_public: Public * field_active: Active * field_done_ratio: "% Done" * field_group_by: Group results by * field_column_names: Columns * field_filesize: Size * field_last_login_on: Last connection * field_version: Version * field_priority: Priority * field_category: Category * field_assigned_to: Assignee * field_start_date: Start date * field_due_date: Due date * field_project: Project * field_estimated_hours: Estimated time * field_description: Description * field_spent_on: Date * field_issue: Issue * field_notes: Notes * field_sharing: Sharing * field_filename: File * field_impaired: Accessibility mode * field_homepage: Homepage * field_assignable: Issues can be assigned to this role * field_watcher * field_attr_firstname: Firstname attribute * field_attr_lastname: Lastname attribute * field_attr_login: Login attribute * field_attr_mail: Email attribute * field_auth_source: Authentication mode * field_comments_sorting: Display comments * field_content: Content * field_downloads: Downloads * field_editable: Editable * field_hide_mail: Hide my email address * field_is_filter: Used as a filter * field_is_in_roadmap: Issues displayed in roadmap * field_max_length: Maximum length * field_min_length: Minimum length * field_possible_values: Possible values * field_redirect_existing_links: Redirect existing links * field_regexp: Regular expression * field_role: Role * field_searchable: Searchable * field_time_zone: Time zone * field_warn_on_leaving_unsaved: "Warn me when leaving a page with * unsaved text" * field_visible: Visible * field_summary: Summary **Now translated via -> <model>.model_name.human ** And moved from field_<something> to activerecord.models.<model> * label_board: Forum * label_user: User * label_version: Version * label_tracker: Tracker * label_role: Role * label_member: Member * label_document: Document * label_issue_category: Issue category * label_issue_status: Issue status * label_group: Group * label_project * label_news: News * label_workflow: Workflow * label_custom_field: Custom field * label_attachment: File * label_comment: Comment * label_query: Custom query * label_wiki: Wiki **field_<attribute>, which were converted to label_<attribute>** * field_ui -> label_ui * field_summary -> label_workflow_summary **field_<attr>-Translations, which were moved to 'en.query_fields.<attr>** * field_member_of_group: "Assignee's group" * field_assigned_to_role: "Assignee's role" * field_subproject: Subproject **Removed translations** * field_principal: Principal * field_text: Text field * all remaining field_<attribute> translations **Added translations** * setting_ui_theme: Theme
12 years ago
auth_source:
account: "Account"
attr_firstname: "Firstname attribute"
attr_lastname: "Lastname attribute"
attr_login: "Username attribute"
attr_mail: "Email attribute"
base_dn: "Base DN"
host: "Host"
onthefly: "Automatic user creation"
port: "Port"
changeset:
repository: "Repository"
restructure en.yml to a better rails3'ish style We use attributes; activerecord.models; activerecord.attributes; query_fields now. All field_<something> were removed and/or renamed. Have a look at the following list of moved/renamed/removed or otherwise modified translations: **Now translated with <model>.human_attribute_name(<attribute>)** And moved from field_<something> to activerecord.attributes.<model>.<attribute> or attributes.<attribute> * field_login: Login * field_password: Password * field_password_confirmation: Confirmation * field_new_password: New password * field_firstname: First name * field_lastname: Last name * field_admin: Administrator * field_base_dn: Base DN * field_name: Name * field_mail: Email * field_author: Author * field_field_format: Format * field_value: Value * field_title: Title * field_tracker: Tracker * field_subject: Subject * field_fixed_version: Target version * field_user: User * field_parent: Subproject of * field_mail_notification: Email notifications * field_effective_date: Due date * field_type: Type * field_base: "General Error:" * field_comments: Comment * field_url: URL * field_start_page: Start page * field_hours: Hours * field_activity: Activity * field_identifier: Identifier * field_issue_to: Related issue * field_delay: Delay * field_time_entries: Log time * field_default_value: Default value * field_parent_title: Parent page * field_parent_issue: Parent task * field_custom_values: Custom fields * field_onthefly: On-the-fly user creation * field_account: Account * field_host: Host * field_port: Port * field_language: Language * field_identity_url: OpenID URL * field_created_on: Created * field_updated_on: Updated * field_status: Status * field_is_required: Required * field_is_for_all: For all projects * field_is_default: Default value * field_is_closed: Issue closed * field_is_public: Public * field_active: Active * field_done_ratio: "% Done" * field_group_by: Group results by * field_column_names: Columns * field_filesize: Size * field_last_login_on: Last connection * field_version: Version * field_priority: Priority * field_category: Category * field_assigned_to: Assignee * field_start_date: Start date * field_due_date: Due date * field_project: Project * field_estimated_hours: Estimated time * field_description: Description * field_spent_on: Date * field_issue: Issue * field_notes: Notes * field_sharing: Sharing * field_filename: File * field_impaired: Accessibility mode * field_homepage: Homepage * field_assignable: Issues can be assigned to this role * field_watcher * field_attr_firstname: Firstname attribute * field_attr_lastname: Lastname attribute * field_attr_login: Login attribute * field_attr_mail: Email attribute * field_auth_source: Authentication mode * field_comments_sorting: Display comments * field_content: Content * field_downloads: Downloads * field_editable: Editable * field_hide_mail: Hide my email address * field_is_filter: Used as a filter * field_is_in_roadmap: Issues displayed in roadmap * field_max_length: Maximum length * field_min_length: Minimum length * field_possible_values: Possible values * field_redirect_existing_links: Redirect existing links * field_regexp: Regular expression * field_role: Role * field_searchable: Searchable * field_time_zone: Time zone * field_warn_on_leaving_unsaved: "Warn me when leaving a page with * unsaved text" * field_visible: Visible * field_summary: Summary **Now translated via -> <model>.model_name.human ** And moved from field_<something> to activerecord.models.<model> * label_board: Forum * label_user: User * label_version: Version * label_tracker: Tracker * label_role: Role * label_member: Member * label_document: Document * label_issue_category: Issue category * label_issue_status: Issue status * label_group: Group * label_project * label_news: News * label_workflow: Workflow * label_custom_field: Custom field * label_attachment: File * label_comment: Comment * label_query: Custom query * label_wiki: Wiki **field_<attribute>, which were converted to label_<attribute>** * field_ui -> label_ui * field_summary -> label_workflow_summary **field_<attr>-Translations, which were moved to 'en.query_fields.<attr>** * field_member_of_group: "Assignee's group" * field_assigned_to_role: "Assignee's role" * field_subproject: Subproject **Removed translations** * field_principal: Principal * field_text: Text field * all remaining field_<attribute> translations **Added translations** * setting_ui_theme: Theme
12 years ago
comment:
commented: "Commented" # an object that this comment belongs to
custom_action:
actions: "Actions"
restructure en.yml to a better rails3'ish style We use attributes; activerecord.models; activerecord.attributes; query_fields now. All field_<something> were removed and/or renamed. Have a look at the following list of moved/renamed/removed or otherwise modified translations: **Now translated with <model>.human_attribute_name(<attribute>)** And moved from field_<something> to activerecord.attributes.<model>.<attribute> or attributes.<attribute> * field_login: Login * field_password: Password * field_password_confirmation: Confirmation * field_new_password: New password * field_firstname: First name * field_lastname: Last name * field_admin: Administrator * field_base_dn: Base DN * field_name: Name * field_mail: Email * field_author: Author * field_field_format: Format * field_value: Value * field_title: Title * field_tracker: Tracker * field_subject: Subject * field_fixed_version: Target version * field_user: User * field_parent: Subproject of * field_mail_notification: Email notifications * field_effective_date: Due date * field_type: Type * field_base: "General Error:" * field_comments: Comment * field_url: URL * field_start_page: Start page * field_hours: Hours * field_activity: Activity * field_identifier: Identifier * field_issue_to: Related issue * field_delay: Delay * field_time_entries: Log time * field_default_value: Default value * field_parent_title: Parent page * field_parent_issue: Parent task * field_custom_values: Custom fields * field_onthefly: On-the-fly user creation * field_account: Account * field_host: Host * field_port: Port * field_language: Language * field_identity_url: OpenID URL * field_created_on: Created * field_updated_on: Updated * field_status: Status * field_is_required: Required * field_is_for_all: For all projects * field_is_default: Default value * field_is_closed: Issue closed * field_is_public: Public * field_active: Active * field_done_ratio: "% Done" * field_group_by: Group results by * field_column_names: Columns * field_filesize: Size * field_last_login_on: Last connection * field_version: Version * field_priority: Priority * field_category: Category * field_assigned_to: Assignee * field_start_date: Start date * field_due_date: Due date * field_project: Project * field_estimated_hours: Estimated time * field_description: Description * field_spent_on: Date * field_issue: Issue * field_notes: Notes * field_sharing: Sharing * field_filename: File * field_impaired: Accessibility mode * field_homepage: Homepage * field_assignable: Issues can be assigned to this role * field_watcher * field_attr_firstname: Firstname attribute * field_attr_lastname: Lastname attribute * field_attr_login: Login attribute * field_attr_mail: Email attribute * field_auth_source: Authentication mode * field_comments_sorting: Display comments * field_content: Content * field_downloads: Downloads * field_editable: Editable * field_hide_mail: Hide my email address * field_is_filter: Used as a filter * field_is_in_roadmap: Issues displayed in roadmap * field_max_length: Maximum length * field_min_length: Minimum length * field_possible_values: Possible values * field_redirect_existing_links: Redirect existing links * field_regexp: Regular expression * field_role: Role * field_searchable: Searchable * field_time_zone: Time zone * field_warn_on_leaving_unsaved: "Warn me when leaving a page with * unsaved text" * field_visible: Visible * field_summary: Summary **Now translated via -> <model>.model_name.human ** And moved from field_<something> to activerecord.models.<model> * label_board: Forum * label_user: User * label_version: Version * label_tracker: Tracker * label_role: Role * label_member: Member * label_document: Document * label_issue_category: Issue category * label_issue_status: Issue status * label_group: Group * label_project * label_news: News * label_workflow: Workflow * label_custom_field: Custom field * label_attachment: File * label_comment: Comment * label_query: Custom query * label_wiki: Wiki **field_<attribute>, which were converted to label_<attribute>** * field_ui -> label_ui * field_summary -> label_workflow_summary **field_<attr>-Translations, which were moved to 'en.query_fields.<attr>** * field_member_of_group: "Assignee's group" * field_assigned_to_role: "Assignee's role" * field_subproject: Subproject **Removed translations** * field_principal: Principal * field_text: Text field * all remaining field_<attribute> translations **Added translations** * setting_ui_theme: Theme
12 years ago
custom_field:
default_value: "Default value"
editable: "Editable"
field_format: "Format"
is_filter: "Used as a filter"
is_required: "Required"
max_length: "Maximum length"
min_length: "Minimum length"
multi_value: "Allow multi-select"
possible_values: "Possible values"
regexp: "Regular expression"
searchable: "Searchable"
visible: "Visible"
restructure en.yml to a better rails3'ish style We use attributes; activerecord.models; activerecord.attributes; query_fields now. All field_<something> were removed and/or renamed. Have a look at the following list of moved/renamed/removed or otherwise modified translations: **Now translated with <model>.human_attribute_name(<attribute>)** And moved from field_<something> to activerecord.attributes.<model>.<attribute> or attributes.<attribute> * field_login: Login * field_password: Password * field_password_confirmation: Confirmation * field_new_password: New password * field_firstname: First name * field_lastname: Last name * field_admin: Administrator * field_base_dn: Base DN * field_name: Name * field_mail: Email * field_author: Author * field_field_format: Format * field_value: Value * field_title: Title * field_tracker: Tracker * field_subject: Subject * field_fixed_version: Target version * field_user: User * field_parent: Subproject of * field_mail_notification: Email notifications * field_effective_date: Due date * field_type: Type * field_base: "General Error:" * field_comments: Comment * field_url: URL * field_start_page: Start page * field_hours: Hours * field_activity: Activity * field_identifier: Identifier * field_issue_to: Related issue * field_delay: Delay * field_time_entries: Log time * field_default_value: Default value * field_parent_title: Parent page * field_parent_issue: Parent task * field_custom_values: Custom fields * field_onthefly: On-the-fly user creation * field_account: Account * field_host: Host * field_port: Port * field_language: Language * field_identity_url: OpenID URL * field_created_on: Created * field_updated_on: Updated * field_status: Status * field_is_required: Required * field_is_for_all: For all projects * field_is_default: Default value * field_is_closed: Issue closed * field_is_public: Public * field_active: Active * field_done_ratio: "% Done" * field_group_by: Group results by * field_column_names: Columns * field_filesize: Size * field_last_login_on: Last connection * field_version: Version * field_priority: Priority * field_category: Category * field_assigned_to: Assignee * field_start_date: Start date * field_due_date: Due date * field_project: Project * field_estimated_hours: Estimated time * field_description: Description * field_spent_on: Date * field_issue: Issue * field_notes: Notes * field_sharing: Sharing * field_filename: File * field_impaired: Accessibility mode * field_homepage: Homepage * field_assignable: Issues can be assigned to this role * field_watcher * field_attr_firstname: Firstname attribute * field_attr_lastname: Lastname attribute * field_attr_login: Login attribute * field_attr_mail: Email attribute * field_auth_source: Authentication mode * field_comments_sorting: Display comments * field_content: Content * field_downloads: Downloads * field_editable: Editable * field_hide_mail: Hide my email address * field_is_filter: Used as a filter * field_is_in_roadmap: Issues displayed in roadmap * field_max_length: Maximum length * field_min_length: Minimum length * field_possible_values: Possible values * field_redirect_existing_links: Redirect existing links * field_regexp: Regular expression * field_role: Role * field_searchable: Searchable * field_time_zone: Time zone * field_warn_on_leaving_unsaved: "Warn me when leaving a page with * unsaved text" * field_visible: Visible * field_summary: Summary **Now translated via -> <model>.model_name.human ** And moved from field_<something> to activerecord.models.<model> * label_board: Forum * label_user: User * label_version: Version * label_tracker: Tracker * label_role: Role * label_member: Member * label_document: Document * label_issue_category: Issue category * label_issue_status: Issue status * label_group: Group * label_project * label_news: News * label_workflow: Workflow * label_custom_field: Custom field * label_attachment: File * label_comment: Comment * label_query: Custom query * label_wiki: Wiki **field_<attribute>, which were converted to label_<attribute>** * field_ui -> label_ui * field_summary -> label_workflow_summary **field_<attr>-Translations, which were moved to 'en.query_fields.<attr>** * field_member_of_group: "Assignee's group" * field_assigned_to_role: "Assignee's role" * field_subproject: Subproject **Removed translations** * field_principal: Principal * field_text: Text field * all remaining field_<attribute> translations **Added translations** * setting_ui_theme: Theme
12 years ago
custom_value:
value: "Value"
enterprise_token:
starts_at: "Valid since"
expires_at: "Expires at"
subscriber: "Subscriber"
encoded_token: "Enterprise support token"
6 years ago
active_user_count_restriction: "Maximum active users"
grids/grid:
page: "Page"
row_count: "Number of rows"
column_count: "Number of columns"
widgets: "Widgets"
relation:
delay: "Delay"
from: "Work package"
11 years ago
to: "Related work package"
status:
is_closed: "Work package closed"
is_readonly: "Work package read-only"
restructure en.yml to a better rails3'ish style We use attributes; activerecord.models; activerecord.attributes; query_fields now. All field_<something> were removed and/or renamed. Have a look at the following list of moved/renamed/removed or otherwise modified translations: **Now translated with <model>.human_attribute_name(<attribute>)** And moved from field_<something> to activerecord.attributes.<model>.<attribute> or attributes.<attribute> * field_login: Login * field_password: Password * field_password_confirmation: Confirmation * field_new_password: New password * field_firstname: First name * field_lastname: Last name * field_admin: Administrator * field_base_dn: Base DN * field_name: Name * field_mail: Email * field_author: Author * field_field_format: Format * field_value: Value * field_title: Title * field_tracker: Tracker * field_subject: Subject * field_fixed_version: Target version * field_user: User * field_parent: Subproject of * field_mail_notification: Email notifications * field_effective_date: Due date * field_type: Type * field_base: "General Error:" * field_comments: Comment * field_url: URL * field_start_page: Start page * field_hours: Hours * field_activity: Activity * field_identifier: Identifier * field_issue_to: Related issue * field_delay: Delay * field_time_entries: Log time * field_default_value: Default value * field_parent_title: Parent page * field_parent_issue: Parent task * field_custom_values: Custom fields * field_onthefly: On-the-fly user creation * field_account: Account * field_host: Host * field_port: Port * field_language: Language * field_identity_url: OpenID URL * field_created_on: Created * field_updated_on: Updated * field_status: Status * field_is_required: Required * field_is_for_all: For all projects * field_is_default: Default value * field_is_closed: Issue closed * field_is_public: Public * field_active: Active * field_done_ratio: "% Done" * field_group_by: Group results by * field_column_names: Columns * field_filesize: Size * field_last_login_on: Last connection * field_version: Version * field_priority: Priority * field_category: Category * field_assigned_to: Assignee * field_start_date: Start date * field_due_date: Due date * field_project: Project * field_estimated_hours: Estimated time * field_description: Description * field_spent_on: Date * field_issue: Issue * field_notes: Notes * field_sharing: Sharing * field_filename: File * field_impaired: Accessibility mode * field_homepage: Homepage * field_assignable: Issues can be assigned to this role * field_watcher * field_attr_firstname: Firstname attribute * field_attr_lastname: Lastname attribute * field_attr_login: Login attribute * field_attr_mail: Email attribute * field_auth_source: Authentication mode * field_comments_sorting: Display comments * field_content: Content * field_downloads: Downloads * field_editable: Editable * field_hide_mail: Hide my email address * field_is_filter: Used as a filter * field_is_in_roadmap: Issues displayed in roadmap * field_max_length: Maximum length * field_min_length: Minimum length * field_possible_values: Possible values * field_redirect_existing_links: Redirect existing links * field_regexp: Regular expression * field_role: Role * field_searchable: Searchable * field_time_zone: Time zone * field_warn_on_leaving_unsaved: "Warn me when leaving a page with * unsaved text" * field_visible: Visible * field_summary: Summary **Now translated via -> <model>.model_name.human ** And moved from field_<something> to activerecord.models.<model> * label_board: Forum * label_user: User * label_version: Version * label_tracker: Tracker * label_role: Role * label_member: Member * label_document: Document * label_issue_category: Issue category * label_issue_status: Issue status * label_group: Group * label_project * label_news: News * label_workflow: Workflow * label_custom_field: Custom field * label_attachment: File * label_comment: Comment * label_query: Custom query * label_wiki: Wiki **field_<attribute>, which were converted to label_<attribute>** * field_ui -> label_ui * field_summary -> label_workflow_summary **field_<attr>-Translations, which were moved to 'en.query_fields.<attr>** * field_member_of_group: "Assignee's group" * field_assigned_to_role: "Assignee's role" * field_subproject: Subproject **Removed translations** * field_principal: Principal * field_text: Text field * all remaining field_<attribute> translations **Added translations** * setting_ui_theme: Theme
12 years ago
journal:
notes: "Notes"
member:
roles: "Roles"
restructure en.yml to a better rails3'ish style We use attributes; activerecord.models; activerecord.attributes; query_fields now. All field_<something> were removed and/or renamed. Have a look at the following list of moved/renamed/removed or otherwise modified translations: **Now translated with <model>.human_attribute_name(<attribute>)** And moved from field_<something> to activerecord.attributes.<model>.<attribute> or attributes.<attribute> * field_login: Login * field_password: Password * field_password_confirmation: Confirmation * field_new_password: New password * field_firstname: First name * field_lastname: Last name * field_admin: Administrator * field_base_dn: Base DN * field_name: Name * field_mail: Email * field_author: Author * field_field_format: Format * field_value: Value * field_title: Title * field_tracker: Tracker * field_subject: Subject * field_fixed_version: Target version * field_user: User * field_parent: Subproject of * field_mail_notification: Email notifications * field_effective_date: Due date * field_type: Type * field_base: "General Error:" * field_comments: Comment * field_url: URL * field_start_page: Start page * field_hours: Hours * field_activity: Activity * field_identifier: Identifier * field_issue_to: Related issue * field_delay: Delay * field_time_entries: Log time * field_default_value: Default value * field_parent_title: Parent page * field_parent_issue: Parent task * field_custom_values: Custom fields * field_onthefly: On-the-fly user creation * field_account: Account * field_host: Host * field_port: Port * field_language: Language * field_identity_url: OpenID URL * field_created_on: Created * field_updated_on: Updated * field_status: Status * field_is_required: Required * field_is_for_all: For all projects * field_is_default: Default value * field_is_closed: Issue closed * field_is_public: Public * field_active: Active * field_done_ratio: "% Done" * field_group_by: Group results by * field_column_names: Columns * field_filesize: Size * field_last_login_on: Last connection * field_version: Version * field_priority: Priority * field_category: Category * field_assigned_to: Assignee * field_start_date: Start date * field_due_date: Due date * field_project: Project * field_estimated_hours: Estimated time * field_description: Description * field_spent_on: Date * field_issue: Issue * field_notes: Notes * field_sharing: Sharing * field_filename: File * field_impaired: Accessibility mode * field_homepage: Homepage * field_assignable: Issues can be assigned to this role * field_watcher * field_attr_firstname: Firstname attribute * field_attr_lastname: Lastname attribute * field_attr_login: Login attribute * field_attr_mail: Email attribute * field_auth_source: Authentication mode * field_comments_sorting: Display comments * field_content: Content * field_downloads: Downloads * field_editable: Editable * field_hide_mail: Hide my email address * field_is_filter: Used as a filter * field_is_in_roadmap: Issues displayed in roadmap * field_max_length: Maximum length * field_min_length: Minimum length * field_possible_values: Possible values * field_redirect_existing_links: Redirect existing links * field_regexp: Regular expression * field_role: Role * field_searchable: Searchable * field_time_zone: Time zone * field_warn_on_leaving_unsaved: "Warn me when leaving a page with * unsaved text" * field_visible: Visible * field_summary: Summary **Now translated via -> <model>.model_name.human ** And moved from field_<something> to activerecord.models.<model> * label_board: Forum * label_user: User * label_version: Version * label_tracker: Tracker * label_role: Role * label_member: Member * label_document: Document * label_issue_category: Issue category * label_issue_status: Issue status * label_group: Group * label_project * label_news: News * label_workflow: Workflow * label_custom_field: Custom field * label_attachment: File * label_comment: Comment * label_query: Custom query * label_wiki: Wiki **field_<attribute>, which were converted to label_<attribute>** * field_ui -> label_ui * field_summary -> label_workflow_summary **field_<attr>-Translations, which were moved to 'en.query_fields.<attr>** * field_member_of_group: "Assignee's group" * field_assigned_to_role: "Assignee's role" * field_subproject: Subproject **Removed translations** * field_principal: Principal * field_text: Text field * all remaining field_<attribute> translations **Added translations** * setting_ui_theme: Theme
12 years ago
project:
identifier: "Identifier"
latest_activity_at: "Latest activity at"
parent: "Subproject of"
queries: "Queries"
types: "Types"
versions: "Versions"
work_packages: "Work Packages"
templated: 'Template project'
projects/status:
code: 'Status'
explanation: 'Status description'
codes:
on_track: 'On track'
at_risk: 'At risk'
off_track: 'Off track'
restructure en.yml to a better rails3'ish style We use attributes; activerecord.models; activerecord.attributes; query_fields now. All field_<something> were removed and/or renamed. Have a look at the following list of moved/renamed/removed or otherwise modified translations: **Now translated with <model>.human_attribute_name(<attribute>)** And moved from field_<something> to activerecord.attributes.<model>.<attribute> or attributes.<attribute> * field_login: Login * field_password: Password * field_password_confirmation: Confirmation * field_new_password: New password * field_firstname: First name * field_lastname: Last name * field_admin: Administrator * field_base_dn: Base DN * field_name: Name * field_mail: Email * field_author: Author * field_field_format: Format * field_value: Value * field_title: Title * field_tracker: Tracker * field_subject: Subject * field_fixed_version: Target version * field_user: User * field_parent: Subproject of * field_mail_notification: Email notifications * field_effective_date: Due date * field_type: Type * field_base: "General Error:" * field_comments: Comment * field_url: URL * field_start_page: Start page * field_hours: Hours * field_activity: Activity * field_identifier: Identifier * field_issue_to: Related issue * field_delay: Delay * field_time_entries: Log time * field_default_value: Default value * field_parent_title: Parent page * field_parent_issue: Parent task * field_custom_values: Custom fields * field_onthefly: On-the-fly user creation * field_account: Account * field_host: Host * field_port: Port * field_language: Language * field_identity_url: OpenID URL * field_created_on: Created * field_updated_on: Updated * field_status: Status * field_is_required: Required * field_is_for_all: For all projects * field_is_default: Default value * field_is_closed: Issue closed * field_is_public: Public * field_active: Active * field_done_ratio: "% Done" * field_group_by: Group results by * field_column_names: Columns * field_filesize: Size * field_last_login_on: Last connection * field_version: Version * field_priority: Priority * field_category: Category * field_assigned_to: Assignee * field_start_date: Start date * field_due_date: Due date * field_project: Project * field_estimated_hours: Estimated time * field_description: Description * field_spent_on: Date * field_issue: Issue * field_notes: Notes * field_sharing: Sharing * field_filename: File * field_impaired: Accessibility mode * field_homepage: Homepage * field_assignable: Issues can be assigned to this role * field_watcher * field_attr_firstname: Firstname attribute * field_attr_lastname: Lastname attribute * field_attr_login: Login attribute * field_attr_mail: Email attribute * field_auth_source: Authentication mode * field_comments_sorting: Display comments * field_content: Content * field_downloads: Downloads * field_editable: Editable * field_hide_mail: Hide my email address * field_is_filter: Used as a filter * field_is_in_roadmap: Issues displayed in roadmap * field_max_length: Maximum length * field_min_length: Minimum length * field_possible_values: Possible values * field_redirect_existing_links: Redirect existing links * field_regexp: Regular expression * field_role: Role * field_searchable: Searchable * field_time_zone: Time zone * field_warn_on_leaving_unsaved: "Warn me when leaving a page with * unsaved text" * field_visible: Visible * field_summary: Summary **Now translated via -> <model>.model_name.human ** And moved from field_<something> to activerecord.models.<model> * label_board: Forum * label_user: User * label_version: Version * label_tracker: Tracker * label_role: Role * label_member: Member * label_document: Document * label_issue_category: Issue category * label_issue_status: Issue status * label_group: Group * label_project * label_news: News * label_workflow: Workflow * label_custom_field: Custom field * label_attachment: File * label_comment: Comment * label_query: Custom query * label_wiki: Wiki **field_<attribute>, which were converted to label_<attribute>** * field_ui -> label_ui * field_summary -> label_workflow_summary **field_<attr>-Translations, which were moved to 'en.query_fields.<attr>** * field_member_of_group: "Assignee's group" * field_assigned_to_role: "Assignee's role" * field_subproject: Subproject **Removed translations** * field_principal: Principal * field_text: Text field * all remaining field_<attribute> translations **Added translations** * setting_ui_theme: Theme
12 years ago
query:
column_names: "Columns"
relations_to_type_column: "Relations to %{type}"
relations_of_type_column: "%{type} relations"
group_by: "Group results by"
filters: "Filters"
timeline_labels: "Timeline labels"
restructure en.yml to a better rails3'ish style We use attributes; activerecord.models; activerecord.attributes; query_fields now. All field_<something> were removed and/or renamed. Have a look at the following list of moved/renamed/removed or otherwise modified translations: **Now translated with <model>.human_attribute_name(<attribute>)** And moved from field_<something> to activerecord.attributes.<model>.<attribute> or attributes.<attribute> * field_login: Login * field_password: Password * field_password_confirmation: Confirmation * field_new_password: New password * field_firstname: First name * field_lastname: Last name * field_admin: Administrator * field_base_dn: Base DN * field_name: Name * field_mail: Email * field_author: Author * field_field_format: Format * field_value: Value * field_title: Title * field_tracker: Tracker * field_subject: Subject * field_fixed_version: Target version * field_user: User * field_parent: Subproject of * field_mail_notification: Email notifications * field_effective_date: Due date * field_type: Type * field_base: "General Error:" * field_comments: Comment * field_url: URL * field_start_page: Start page * field_hours: Hours * field_activity: Activity * field_identifier: Identifier * field_issue_to: Related issue * field_delay: Delay * field_time_entries: Log time * field_default_value: Default value * field_parent_title: Parent page * field_parent_issue: Parent task * field_custom_values: Custom fields * field_onthefly: On-the-fly user creation * field_account: Account * field_host: Host * field_port: Port * field_language: Language * field_identity_url: OpenID URL * field_created_on: Created * field_updated_on: Updated * field_status: Status * field_is_required: Required * field_is_for_all: For all projects * field_is_default: Default value * field_is_closed: Issue closed * field_is_public: Public * field_active: Active * field_done_ratio: "% Done" * field_group_by: Group results by * field_column_names: Columns * field_filesize: Size * field_last_login_on: Last connection * field_version: Version * field_priority: Priority * field_category: Category * field_assigned_to: Assignee * field_start_date: Start date * field_due_date: Due date * field_project: Project * field_estimated_hours: Estimated time * field_description: Description * field_spent_on: Date * field_issue: Issue * field_notes: Notes * field_sharing: Sharing * field_filename: File * field_impaired: Accessibility mode * field_homepage: Homepage * field_assignable: Issues can be assigned to this role * field_watcher * field_attr_firstname: Firstname attribute * field_attr_lastname: Lastname attribute * field_attr_login: Login attribute * field_attr_mail: Email attribute * field_auth_source: Authentication mode * field_comments_sorting: Display comments * field_content: Content * field_downloads: Downloads * field_editable: Editable * field_hide_mail: Hide my email address * field_is_filter: Used as a filter * field_is_in_roadmap: Issues displayed in roadmap * field_max_length: Maximum length * field_min_length: Minimum length * field_possible_values: Possible values * field_redirect_existing_links: Redirect existing links * field_regexp: Regular expression * field_role: Role * field_searchable: Searchable * field_time_zone: Time zone * field_warn_on_leaving_unsaved: "Warn me when leaving a page with * unsaved text" * field_visible: Visible * field_summary: Summary **Now translated via -> <model>.model_name.human ** And moved from field_<something> to activerecord.models.<model> * label_board: Forum * label_user: User * label_version: Version * label_tracker: Tracker * label_role: Role * label_member: Member * label_document: Document * label_issue_category: Issue category * label_issue_status: Issue status * label_group: Group * label_project * label_news: News * label_workflow: Workflow * label_custom_field: Custom field * label_attachment: File * label_comment: Comment * label_query: Custom query * label_wiki: Wiki **field_<attribute>, which were converted to label_<attribute>** * field_ui -> label_ui * field_summary -> label_workflow_summary **field_<attr>-Translations, which were moved to 'en.query_fields.<attr>** * field_member_of_group: "Assignee's group" * field_assigned_to_role: "Assignee's role" * field_subproject: Subproject **Removed translations** * field_principal: Principal * field_text: Text field * all remaining field_<attribute> translations **Added translations** * setting_ui_theme: Theme
12 years ago
repository:
url: "URL"
restructure en.yml to a better rails3'ish style We use attributes; activerecord.models; activerecord.attributes; query_fields now. All field_<something> were removed and/or renamed. Have a look at the following list of moved/renamed/removed or otherwise modified translations: **Now translated with <model>.human_attribute_name(<attribute>)** And moved from field_<something> to activerecord.attributes.<model>.<attribute> or attributes.<attribute> * field_login: Login * field_password: Password * field_password_confirmation: Confirmation * field_new_password: New password * field_firstname: First name * field_lastname: Last name * field_admin: Administrator * field_base_dn: Base DN * field_name: Name * field_mail: Email * field_author: Author * field_field_format: Format * field_value: Value * field_title: Title * field_tracker: Tracker * field_subject: Subject * field_fixed_version: Target version * field_user: User * field_parent: Subproject of * field_mail_notification: Email notifications * field_effective_date: Due date * field_type: Type * field_base: "General Error:" * field_comments: Comment * field_url: URL * field_start_page: Start page * field_hours: Hours * field_activity: Activity * field_identifier: Identifier * field_issue_to: Related issue * field_delay: Delay * field_time_entries: Log time * field_default_value: Default value * field_parent_title: Parent page * field_parent_issue: Parent task * field_custom_values: Custom fields * field_onthefly: On-the-fly user creation * field_account: Account * field_host: Host * field_port: Port * field_language: Language * field_identity_url: OpenID URL * field_created_on: Created * field_updated_on: Updated * field_status: Status * field_is_required: Required * field_is_for_all: For all projects * field_is_default: Default value * field_is_closed: Issue closed * field_is_public: Public * field_active: Active * field_done_ratio: "% Done" * field_group_by: Group results by * field_column_names: Columns * field_filesize: Size * field_last_login_on: Last connection * field_version: Version * field_priority: Priority * field_category: Category * field_assigned_to: Assignee * field_start_date: Start date * field_due_date: Due date * field_project: Project * field_estimated_hours: Estimated time * field_description: Description * field_spent_on: Date * field_issue: Issue * field_notes: Notes * field_sharing: Sharing * field_filename: File * field_impaired: Accessibility mode * field_homepage: Homepage * field_assignable: Issues can be assigned to this role * field_watcher * field_attr_firstname: Firstname attribute * field_attr_lastname: Lastname attribute * field_attr_login: Login attribute * field_attr_mail: Email attribute * field_auth_source: Authentication mode * field_comments_sorting: Display comments * field_content: Content * field_downloads: Downloads * field_editable: Editable * field_hide_mail: Hide my email address * field_is_filter: Used as a filter * field_is_in_roadmap: Issues displayed in roadmap * field_max_length: Maximum length * field_min_length: Minimum length * field_possible_values: Possible values * field_redirect_existing_links: Redirect existing links * field_regexp: Regular expression * field_role: Role * field_searchable: Searchable * field_time_zone: Time zone * field_warn_on_leaving_unsaved: "Warn me when leaving a page with * unsaved text" * field_visible: Visible * field_summary: Summary **Now translated via -> <model>.model_name.human ** And moved from field_<something> to activerecord.models.<model> * label_board: Forum * label_user: User * label_version: Version * label_tracker: Tracker * label_role: Role * label_member: Member * label_document: Document * label_issue_category: Issue category * label_issue_status: Issue status * label_group: Group * label_project * label_news: News * label_workflow: Workflow * label_custom_field: Custom field * label_attachment: File * label_comment: Comment * label_query: Custom query * label_wiki: Wiki **field_<attribute>, which were converted to label_<attribute>** * field_ui -> label_ui * field_summary -> label_workflow_summary **field_<attr>-Translations, which were moved to 'en.query_fields.<attr>** * field_member_of_group: "Assignee's group" * field_assigned_to_role: "Assignee's role" * field_subproject: Subproject **Removed translations** * field_principal: Principal * field_text: Text field * all remaining field_<attribute> translations **Added translations** * setting_ui_theme: Theme
12 years ago
role:
assignable: "Work packages can be assigned to users and groups in possession of this role in the respective project"
restructure en.yml to a better rails3'ish style We use attributes; activerecord.models; activerecord.attributes; query_fields now. All field_<something> were removed and/or renamed. Have a look at the following list of moved/renamed/removed or otherwise modified translations: **Now translated with <model>.human_attribute_name(<attribute>)** And moved from field_<something> to activerecord.attributes.<model>.<attribute> or attributes.<attribute> * field_login: Login * field_password: Password * field_password_confirmation: Confirmation * field_new_password: New password * field_firstname: First name * field_lastname: Last name * field_admin: Administrator * field_base_dn: Base DN * field_name: Name * field_mail: Email * field_author: Author * field_field_format: Format * field_value: Value * field_title: Title * field_tracker: Tracker * field_subject: Subject * field_fixed_version: Target version * field_user: User * field_parent: Subproject of * field_mail_notification: Email notifications * field_effective_date: Due date * field_type: Type * field_base: "General Error:" * field_comments: Comment * field_url: URL * field_start_page: Start page * field_hours: Hours * field_activity: Activity * field_identifier: Identifier * field_issue_to: Related issue * field_delay: Delay * field_time_entries: Log time * field_default_value: Default value * field_parent_title: Parent page * field_parent_issue: Parent task * field_custom_values: Custom fields * field_onthefly: On-the-fly user creation * field_account: Account * field_host: Host * field_port: Port * field_language: Language * field_identity_url: OpenID URL * field_created_on: Created * field_updated_on: Updated * field_status: Status * field_is_required: Required * field_is_for_all: For all projects * field_is_default: Default value * field_is_closed: Issue closed * field_is_public: Public * field_active: Active * field_done_ratio: "% Done" * field_group_by: Group results by * field_column_names: Columns * field_filesize: Size * field_last_login_on: Last connection * field_version: Version * field_priority: Priority * field_category: Category * field_assigned_to: Assignee * field_start_date: Start date * field_due_date: Due date * field_project: Project * field_estimated_hours: Estimated time * field_description: Description * field_spent_on: Date * field_issue: Issue * field_notes: Notes * field_sharing: Sharing * field_filename: File * field_impaired: Accessibility mode * field_homepage: Homepage * field_assignable: Issues can be assigned to this role * field_watcher * field_attr_firstname: Firstname attribute * field_attr_lastname: Lastname attribute * field_attr_login: Login attribute * field_attr_mail: Email attribute * field_auth_source: Authentication mode * field_comments_sorting: Display comments * field_content: Content * field_downloads: Downloads * field_editable: Editable * field_hide_mail: Hide my email address * field_is_filter: Used as a filter * field_is_in_roadmap: Issues displayed in roadmap * field_max_length: Maximum length * field_min_length: Minimum length * field_possible_values: Possible values * field_redirect_existing_links: Redirect existing links * field_regexp: Regular expression * field_role: Role * field_searchable: Searchable * field_time_zone: Time zone * field_warn_on_leaving_unsaved: "Warn me when leaving a page with * unsaved text" * field_visible: Visible * field_summary: Summary **Now translated via -> <model>.model_name.human ** And moved from field_<something> to activerecord.models.<model> * label_board: Forum * label_user: User * label_version: Version * label_tracker: Tracker * label_role: Role * label_member: Member * label_document: Document * label_issue_category: Issue category * label_issue_status: Issue status * label_group: Group * label_project * label_news: News * label_workflow: Workflow * label_custom_field: Custom field * label_attachment: File * label_comment: Comment * label_query: Custom query * label_wiki: Wiki **field_<attribute>, which were converted to label_<attribute>** * field_ui -> label_ui * field_summary -> label_workflow_summary **field_<attr>-Translations, which were moved to 'en.query_fields.<attr>** * field_member_of_group: "Assignee's group" * field_assigned_to_role: "Assignee's role" * field_subproject: Subproject **Removed translations** * field_principal: Principal * field_text: Text field * all remaining field_<attribute> translations **Added translations** * setting_ui_theme: Theme
12 years ago
time_entry:
activity: "Activity"
hours: "Hours"
spent_on: "Date"
type: "Type"
type:
description: "Default text for description"
attribute_groups: ''
is_in_roadmap: "Displayed in roadmap by default"
is_default: "Activated for new projects by default"
is_milestone: "Is milestone"
color: "Color"
restructure en.yml to a better rails3'ish style We use attributes; activerecord.models; activerecord.attributes; query_fields now. All field_<something> were removed and/or renamed. Have a look at the following list of moved/renamed/removed or otherwise modified translations: **Now translated with <model>.human_attribute_name(<attribute>)** And moved from field_<something> to activerecord.attributes.<model>.<attribute> or attributes.<attribute> * field_login: Login * field_password: Password * field_password_confirmation: Confirmation * field_new_password: New password * field_firstname: First name * field_lastname: Last name * field_admin: Administrator * field_base_dn: Base DN * field_name: Name * field_mail: Email * field_author: Author * field_field_format: Format * field_value: Value * field_title: Title * field_tracker: Tracker * field_subject: Subject * field_fixed_version: Target version * field_user: User * field_parent: Subproject of * field_mail_notification: Email notifications * field_effective_date: Due date * field_type: Type * field_base: "General Error:" * field_comments: Comment * field_url: URL * field_start_page: Start page * field_hours: Hours * field_activity: Activity * field_identifier: Identifier * field_issue_to: Related issue * field_delay: Delay * field_time_entries: Log time * field_default_value: Default value * field_parent_title: Parent page * field_parent_issue: Parent task * field_custom_values: Custom fields * field_onthefly: On-the-fly user creation * field_account: Account * field_host: Host * field_port: Port * field_language: Language * field_identity_url: OpenID URL * field_created_on: Created * field_updated_on: Updated * field_status: Status * field_is_required: Required * field_is_for_all: For all projects * field_is_default: Default value * field_is_closed: Issue closed * field_is_public: Public * field_active: Active * field_done_ratio: "% Done" * field_group_by: Group results by * field_column_names: Columns * field_filesize: Size * field_last_login_on: Last connection * field_version: Version * field_priority: Priority * field_category: Category * field_assigned_to: Assignee * field_start_date: Start date * field_due_date: Due date * field_project: Project * field_estimated_hours: Estimated time * field_description: Description * field_spent_on: Date * field_issue: Issue * field_notes: Notes * field_sharing: Sharing * field_filename: File * field_impaired: Accessibility mode * field_homepage: Homepage * field_assignable: Issues can be assigned to this role * field_watcher * field_attr_firstname: Firstname attribute * field_attr_lastname: Lastname attribute * field_attr_login: Login attribute * field_attr_mail: Email attribute * field_auth_source: Authentication mode * field_comments_sorting: Display comments * field_content: Content * field_downloads: Downloads * field_editable: Editable * field_hide_mail: Hide my email address * field_is_filter: Used as a filter * field_is_in_roadmap: Issues displayed in roadmap * field_max_length: Maximum length * field_min_length: Minimum length * field_possible_values: Possible values * field_redirect_existing_links: Redirect existing links * field_regexp: Regular expression * field_role: Role * field_searchable: Searchable * field_time_zone: Time zone * field_warn_on_leaving_unsaved: "Warn me when leaving a page with * unsaved text" * field_visible: Visible * field_summary: Summary **Now translated via -> <model>.model_name.human ** And moved from field_<something> to activerecord.models.<model> * label_board: Forum * label_user: User * label_version: Version * label_tracker: Tracker * label_role: Role * label_member: Member * label_document: Document * label_issue_category: Issue category * label_issue_status: Issue status * label_group: Group * label_project * label_news: News * label_workflow: Workflow * label_custom_field: Custom field * label_attachment: File * label_comment: Comment * label_query: Custom query * label_wiki: Wiki **field_<attribute>, which were converted to label_<attribute>** * field_ui -> label_ui * field_summary -> label_workflow_summary **field_<attr>-Translations, which were moved to 'en.query_fields.<attr>** * field_member_of_group: "Assignee's group" * field_assigned_to_role: "Assignee's role" * field_subproject: Subproject **Removed translations** * field_principal: Principal * field_text: Text field * all remaining field_<attribute> translations **Added translations** * setting_ui_theme: Theme
12 years ago
user:
admin: "Administrator"
auth_source: "Authentication mode"
current_password: "Current password"
force_password_change: "Enforce password change on next login"
language: "Language"
last_login_on: "Last login"
new_password: "New password"
password_confirmation: "Confirmation"
consented_at: "Consented at"
restructure en.yml to a better rails3'ish style We use attributes; activerecord.models; activerecord.attributes; query_fields now. All field_<something> were removed and/or renamed. Have a look at the following list of moved/renamed/removed or otherwise modified translations: **Now translated with <model>.human_attribute_name(<attribute>)** And moved from field_<something> to activerecord.attributes.<model>.<attribute> or attributes.<attribute> * field_login: Login * field_password: Password * field_password_confirmation: Confirmation * field_new_password: New password * field_firstname: First name * field_lastname: Last name * field_admin: Administrator * field_base_dn: Base DN * field_name: Name * field_mail: Email * field_author: Author * field_field_format: Format * field_value: Value * field_title: Title * field_tracker: Tracker * field_subject: Subject * field_fixed_version: Target version * field_user: User * field_parent: Subproject of * field_mail_notification: Email notifications * field_effective_date: Due date * field_type: Type * field_base: "General Error:" * field_comments: Comment * field_url: URL * field_start_page: Start page * field_hours: Hours * field_activity: Activity * field_identifier: Identifier * field_issue_to: Related issue * field_delay: Delay * field_time_entries: Log time * field_default_value: Default value * field_parent_title: Parent page * field_parent_issue: Parent task * field_custom_values: Custom fields * field_onthefly: On-the-fly user creation * field_account: Account * field_host: Host * field_port: Port * field_language: Language * field_identity_url: OpenID URL * field_created_on: Created * field_updated_on: Updated * field_status: Status * field_is_required: Required * field_is_for_all: For all projects * field_is_default: Default value * field_is_closed: Issue closed * field_is_public: Public * field_active: Active * field_done_ratio: "% Done" * field_group_by: Group results by * field_column_names: Columns * field_filesize: Size * field_last_login_on: Last connection * field_version: Version * field_priority: Priority * field_category: Category * field_assigned_to: Assignee * field_start_date: Start date * field_due_date: Due date * field_project: Project * field_estimated_hours: Estimated time * field_description: Description * field_spent_on: Date * field_issue: Issue * field_notes: Notes * field_sharing: Sharing * field_filename: File * field_impaired: Accessibility mode * field_homepage: Homepage * field_assignable: Issues can be assigned to this role * field_watcher * field_attr_firstname: Firstname attribute * field_attr_lastname: Lastname attribute * field_attr_login: Login attribute * field_attr_mail: Email attribute * field_auth_source: Authentication mode * field_comments_sorting: Display comments * field_content: Content * field_downloads: Downloads * field_editable: Editable * field_hide_mail: Hide my email address * field_is_filter: Used as a filter * field_is_in_roadmap: Issues displayed in roadmap * field_max_length: Maximum length * field_min_length: Minimum length * field_possible_values: Possible values * field_redirect_existing_links: Redirect existing links * field_regexp: Regular expression * field_role: Role * field_searchable: Searchable * field_time_zone: Time zone * field_warn_on_leaving_unsaved: "Warn me when leaving a page with * unsaved text" * field_visible: Visible * field_summary: Summary **Now translated via -> <model>.model_name.human ** And moved from field_<something> to activerecord.models.<model> * label_board: Forum * label_user: User * label_version: Version * label_tracker: Tracker * label_role: Role * label_member: Member * label_document: Document * label_issue_category: Issue category * label_issue_status: Issue status * label_group: Group * label_project * label_news: News * label_workflow: Workflow * label_custom_field: Custom field * label_attachment: File * label_comment: Comment * label_query: Custom query * label_wiki: Wiki **field_<attribute>, which were converted to label_<attribute>** * field_ui -> label_ui * field_summary -> label_workflow_summary **field_<attr>-Translations, which were moved to 'en.query_fields.<attr>** * field_member_of_group: "Assignee's group" * field_assigned_to_role: "Assignee's role" * field_subproject: Subproject **Removed translations** * field_principal: Principal * field_text: Text field * all remaining field_<attribute> translations **Added translations** * setting_ui_theme: Theme
12 years ago
user_preference:
comments_sorting: "Display comments"
hide_mail: "Hide my email address"
impaired: "Accessibility mode"
time_zone: "Time zone"
8 years ago
auto_hide_popups: "Auto-hide success notifications"
warn_on_leaving_unsaved: "Warn me when leaving a work package with unsaved changes"
restructure en.yml to a better rails3'ish style We use attributes; activerecord.models; activerecord.attributes; query_fields now. All field_<something> were removed and/or renamed. Have a look at the following list of moved/renamed/removed or otherwise modified translations: **Now translated with <model>.human_attribute_name(<attribute>)** And moved from field_<something> to activerecord.attributes.<model>.<attribute> or attributes.<attribute> * field_login: Login * field_password: Password * field_password_confirmation: Confirmation * field_new_password: New password * field_firstname: First name * field_lastname: Last name * field_admin: Administrator * field_base_dn: Base DN * field_name: Name * field_mail: Email * field_author: Author * field_field_format: Format * field_value: Value * field_title: Title * field_tracker: Tracker * field_subject: Subject * field_fixed_version: Target version * field_user: User * field_parent: Subproject of * field_mail_notification: Email notifications * field_effective_date: Due date * field_type: Type * field_base: "General Error:" * field_comments: Comment * field_url: URL * field_start_page: Start page * field_hours: Hours * field_activity: Activity * field_identifier: Identifier * field_issue_to: Related issue * field_delay: Delay * field_time_entries: Log time * field_default_value: Default value * field_parent_title: Parent page * field_parent_issue: Parent task * field_custom_values: Custom fields * field_onthefly: On-the-fly user creation * field_account: Account * field_host: Host * field_port: Port * field_language: Language * field_identity_url: OpenID URL * field_created_on: Created * field_updated_on: Updated * field_status: Status * field_is_required: Required * field_is_for_all: For all projects * field_is_default: Default value * field_is_closed: Issue closed * field_is_public: Public * field_active: Active * field_done_ratio: "% Done" * field_group_by: Group results by * field_column_names: Columns * field_filesize: Size * field_last_login_on: Last connection * field_version: Version * field_priority: Priority * field_category: Category * field_assigned_to: Assignee * field_start_date: Start date * field_due_date: Due date * field_project: Project * field_estimated_hours: Estimated time * field_description: Description * field_spent_on: Date * field_issue: Issue * field_notes: Notes * field_sharing: Sharing * field_filename: File * field_impaired: Accessibility mode * field_homepage: Homepage * field_assignable: Issues can be assigned to this role * field_watcher * field_attr_firstname: Firstname attribute * field_attr_lastname: Lastname attribute * field_attr_login: Login attribute * field_attr_mail: Email attribute * field_auth_source: Authentication mode * field_comments_sorting: Display comments * field_content: Content * field_downloads: Downloads * field_editable: Editable * field_hide_mail: Hide my email address * field_is_filter: Used as a filter * field_is_in_roadmap: Issues displayed in roadmap * field_max_length: Maximum length * field_min_length: Minimum length * field_possible_values: Possible values * field_redirect_existing_links: Redirect existing links * field_regexp: Regular expression * field_role: Role * field_searchable: Searchable * field_time_zone: Time zone * field_warn_on_leaving_unsaved: "Warn me when leaving a page with * unsaved text" * field_visible: Visible * field_summary: Summary **Now translated via -> <model>.model_name.human ** And moved from field_<something> to activerecord.models.<model> * label_board: Forum * label_user: User * label_version: Version * label_tracker: Tracker * label_role: Role * label_member: Member * label_document: Document * label_issue_category: Issue category * label_issue_status: Issue status * label_group: Group * label_project * label_news: News * label_workflow: Workflow * label_custom_field: Custom field * label_attachment: File * label_comment: Comment * label_query: Custom query * label_wiki: Wiki **field_<attribute>, which were converted to label_<attribute>** * field_ui -> label_ui * field_summary -> label_workflow_summary **field_<attr>-Translations, which were moved to 'en.query_fields.<attr>** * field_member_of_group: "Assignee's group" * field_assigned_to_role: "Assignee's role" * field_subproject: Subproject **Removed translations** * field_principal: Principal * field_text: Text field * all remaining field_<attribute> translations **Added translations** * setting_ui_theme: Theme
12 years ago
version:
effective_date: "Finish date"
sharing: "Sharing"
wiki_content:
text: "Text"
restructure en.yml to a better rails3'ish style We use attributes; activerecord.models; activerecord.attributes; query_fields now. All field_<something> were removed and/or renamed. Have a look at the following list of moved/renamed/removed or otherwise modified translations: **Now translated with <model>.human_attribute_name(<attribute>)** And moved from field_<something> to activerecord.attributes.<model>.<attribute> or attributes.<attribute> * field_login: Login * field_password: Password * field_password_confirmation: Confirmation * field_new_password: New password * field_firstname: First name * field_lastname: Last name * field_admin: Administrator * field_base_dn: Base DN * field_name: Name * field_mail: Email * field_author: Author * field_field_format: Format * field_value: Value * field_title: Title * field_tracker: Tracker * field_subject: Subject * field_fixed_version: Target version * field_user: User * field_parent: Subproject of * field_mail_notification: Email notifications * field_effective_date: Due date * field_type: Type * field_base: "General Error:" * field_comments: Comment * field_url: URL * field_start_page: Start page * field_hours: Hours * field_activity: Activity * field_identifier: Identifier * field_issue_to: Related issue * field_delay: Delay * field_time_entries: Log time * field_default_value: Default value * field_parent_title: Parent page * field_parent_issue: Parent task * field_custom_values: Custom fields * field_onthefly: On-the-fly user creation * field_account: Account * field_host: Host * field_port: Port * field_language: Language * field_identity_url: OpenID URL * field_created_on: Created * field_updated_on: Updated * field_status: Status * field_is_required: Required * field_is_for_all: For all projects * field_is_default: Default value * field_is_closed: Issue closed * field_is_public: Public * field_active: Active * field_done_ratio: "% Done" * field_group_by: Group results by * field_column_names: Columns * field_filesize: Size * field_last_login_on: Last connection * field_version: Version * field_priority: Priority * field_category: Category * field_assigned_to: Assignee * field_start_date: Start date * field_due_date: Due date * field_project: Project * field_estimated_hours: Estimated time * field_description: Description * field_spent_on: Date * field_issue: Issue * field_notes: Notes * field_sharing: Sharing * field_filename: File * field_impaired: Accessibility mode * field_homepage: Homepage * field_assignable: Issues can be assigned to this role * field_watcher * field_attr_firstname: Firstname attribute * field_attr_lastname: Lastname attribute * field_attr_login: Login attribute * field_attr_mail: Email attribute * field_auth_source: Authentication mode * field_comments_sorting: Display comments * field_content: Content * field_downloads: Downloads * field_editable: Editable * field_hide_mail: Hide my email address * field_is_filter: Used as a filter * field_is_in_roadmap: Issues displayed in roadmap * field_max_length: Maximum length * field_min_length: Minimum length * field_possible_values: Possible values * field_redirect_existing_links: Redirect existing links * field_regexp: Regular expression * field_role: Role * field_searchable: Searchable * field_time_zone: Time zone * field_warn_on_leaving_unsaved: "Warn me when leaving a page with * unsaved text" * field_visible: Visible * field_summary: Summary **Now translated via -> <model>.model_name.human ** And moved from field_<something> to activerecord.models.<model> * label_board: Forum * label_user: User * label_version: Version * label_tracker: Tracker * label_role: Role * label_member: Member * label_document: Document * label_issue_category: Issue category * label_issue_status: Issue status * label_group: Group * label_project * label_news: News * label_workflow: Workflow * label_custom_field: Custom field * label_attachment: File * label_comment: Comment * label_query: Custom query * label_wiki: Wiki **field_<attribute>, which were converted to label_<attribute>** * field_ui -> label_ui * field_summary -> label_workflow_summary **field_<attr>-Translations, which were moved to 'en.query_fields.<attr>** * field_member_of_group: "Assignee's group" * field_assigned_to_role: "Assignee's role" * field_subproject: Subproject **Removed translations** * field_principal: Principal * field_text: Text field * all remaining field_<attribute> translations **Added translations** * setting_ui_theme: Theme
12 years ago
wiki_page:
parent_title: "Parent page"
redirect_existing_links: "Redirect existing links"
planning_element_type_color:
hexcode: Hex code
work_package:
begin_insertion: "Begin of the insertion"
begin_deletion: "Begin of the deletion"
children: "Subelements"
done_ratio: "Progress (%)"
end_insertion: "End of the insertion"
end_deletion: "End of the deletion"
version: "Version"
parent: "Parent"
parent_issue: "Parent"
parent_work_package: "Parent"
priority: "Priority"
progress: "Progress (%)"
schedule_manually: "Manual scheduling"
spent_hours: "Spent time"
spent_time: "Spent time"
subproject: "Subproject"
time_entries: "Log time"
type: "Type"
watcher: "Watcher"
'doorkeeper/application':
uid: "Client ID"
secret: "Client secret"
owner: "Owner"
redirect_uri: "Redirect URI"
client_credentials_user_id: "Client Credentials User ID"
scopes: "Scopes"
confidential: "Confidential"
errors:
messages:
accepted: "must be accepted."
after: "must be after %{date}."
after_or_equal_to: "must be after or equal to %{date}."
before: "must be before %{date}."
before_or_equal_to: "must be before or equal to %{date}."
blank: "can't be blank."
blank_nested: "needs to have the property '%{property}' set."
cant_link_a_work_package_with_a_descendant: "A work package cannot be linked to one of its subtasks."
circular_dependency: "This relation would create a circular dependency."
confirmation: "doesn't match %{attribute}."
could_not_be_copied: "%{dependency} could not be (fully) copied."
does_not_exist: "does not exist."
error_enterprise_only: "is only available in the OpenProject Enterprise Edition"
error_unauthorized: "may not be accessed."
error_readonly: "was attempted to be written but is not writable."
email: "is not a valid email address."
empty: "can't be empty."
even: "must be even."
exclusion: "is reserved."
file_too_large: "is too large (maximum size is %{count} Bytes)."
format: "does not match the expected format '%{expected}'."
format_nested: "does not match the expected format '%{expected}' at path '%{path}'."
greater_than: "must be greater than %{count}."
greater_than_or_equal_to: "must be greater than or equal to %{count}."
greater_than_or_equal_to_start_date: "must be greater than or equal to the start date."
greater_than_start_date: "must be greater than the start date."
inclusion: "is not set to one of the allowed values."
inclusion_nested: "is not set to one of the allowed values at path '%{path}'."
invalid: "is invalid."
invalid_url: 'is not a valid URL.'
invalid_url_scheme: 'is not a supported protocol (allowed: %{allowed_schemes}).'
less_than_or_equal_to: "must be less than or equal to %{count}."
[37868] Whitelist for attachment mime types and extensions on upload (#9431) * Add setting for whitelist * Make attachments API BaseServices compatible * Add prepare service and contract * Correctly pass the filename to the UploadedFile * Add presence check to filename * Fix expected validation message * We no longer raise a multipart error when metadata is empty * Fix filesize validation on prepared uploads * Add parser error if invalid metadata json * When attachment is not saved, use filename property * Return correct error message on JSON parser erroro * Fix specs * Use attachment upload representer * Fix direct uploads mocks with new service layer * Lint * Fix export job using attachment service * Fix IFC controller using attachment prepare service * Fix export job * RenameRename params_getter to params_source * Fix mail handler using attachment service * Fix usage of attachment create service in documents * Reuse shared examples for document attachment spec * Fix stubbed attachment service in export job spec * Use admin user in backup spec * Fix export job for bim * Fix attachment integration spec * Fix issues_controller spec * Make budget resource spec reuse common examples * Fix attachment parsing representer spec * Replace prepare part of attachment spec into separate service spec * Clear cache for login spec * Convert document create/update into services * Budget services * Allow options to be passed to property twin * Remove setting author on budget initialize * Replace meetings update with services * Replace ifc models attachment handling with services * Don't check uploader if changed by system * Fix uploader being changed by system * Replace wiki page attach_files with attachable services * Replace avatar saving * Replace snapshot attach_files * Skip double validation when container present * Set snapshot through attachment service * Remove attach_files * Validate content type in contract * Enforce writing the content type without accepting user input * Expect changed content_type * Fix content of viewpoint image to get correct content type * Fix tsv spec * Add create contract spec * Bypass whitelist in internal services when conflicting with user * Fix expects in specs after whitelist bypass * Render contract errors for wiki * Add before_hook to bodied to allow to pre-authorize permissions * Budget errors from contract * Document errors from contract
3 years ago
not_available: "is not available due to a system configuration."
[35507] Allow global permission to add and edit users (#8937) * Add global permission for add_user * Rename fieldset for global roles to "Global" * Add permission to admin actions * Add index action to add_user permission * Redirect to first admin item if only one * Hide status action for non admins * Break down user form into partials for easier rendering * Disable some user form tabs for non-admins * Make users API and services conformant with endpoints * Fix references to DeleteService#deletion_allowed? * Authorize add_user on show as well * Only show invite user toolbar item with permission * Fix Delete Service spec * Fix the way user prefs are handled in service * Ensure session_id is treated as string This causes a cast error otherwise as it passes rack session locally * Fix service call on onboarding controller * Fix service call on users controller * Add delete spec for global user * Hide login attribute again when adding a new user * Render auth source correctly in simple form * Fix creating invited users through service The invitation requires the mail attribute to be present. Previously, there was a manual error added to the mail. As the errors are now determined by the contract + model, we now end up with all missing properties as errors. * Properly constraint attributes for non-admins * Add specs for global user * Start working on how to update password from UsersController that code is a mess... * Change permitted_params spec to include non-admin params * Fix create user service spec * Remove mail_notification param from users controller It's not part of the contract/params passed to user * Remove todos * Extend docs * Correct the way backlogs patches into the user settings * Remove superfluous UpdateUserService * Rewrite duplicated update service examples into common shared example * Remove duplicate password writable check * Base Users::DeleteContract on base delete contract * Move checks for active users into the UserAllowedService * Restore password writable check as it is not an attribute * Fix menus for global user * Allow global users to add custom fields * Allow global user add permission to reinvite user * Fix changed var name in update service spec * Ensure also invited or registered users can be authroized This ensure that e.g., invited users can also be set as watchers * fix typo Co-authored-by: ulferts <jens.ulferts@googlemail.com>
4 years ago
not_deletable: "cannot be deleted."
not_current_user: "is not the current user."
not_a_date: "is not a valid date."
not_a_datetime: "is not a valid date time."
not_a_number: "is not a number."
not_allowed: "is invalid because of missing permissions."
not_an_integer: "is not an integer."
not_an_iso_date: "is not a valid date. Required format: YYYY-MM-DD."
not_same_project: "doesn't belong to the same project."
odd: "must be odd."
regex_invalid: "could not be validated with the associated regular expression."
smaller_than_or_equal_to_max_length: "must be smaller than or equal to maximum length."
taken: "has already been taken."
too_long: "is too long (maximum is %{count} characters)."
too_short: "is too short (minimum is %{count} characters)."
type_mismatch: "is not of type '%{type}'"
type_mismatch_nested: "is not of type '%{type}' at path '%{path}'"
unchangeable: "cannot be changed."
unknown_property: "is not a known property."
unknown_property_nested: "has the unknown path '%{path}'."
Boards module (#7008) * Hack spike to show D&D use case [ci skip] * Add ordered work packages * Save order on existing work packages * Boards WIP * CDK drag * Add dragula handler [ci skip] * Add filter to return all manual sorted work packages * Print icon on hover * Boards routing and list components * Better loading indicator on list with streaming result [ci skip] * Add new board and list buttons [ci skip] * Post new query [ci skip] * Added creation of new board lists with persisted queries [ci skip] * Render placeholder row in empty queries [ci skip] * Push boards on grid * Use base class in scope [ci skip] * Extend api for options * Hack spike to show D&D use case [ci skip] * Add ordered work packages * Save order on existing work packages * Boards WIP * CDK drag * Add dragula handler [ci skip] * Add filter to return all manual sorted work packages * Print icon on hover * Boards routing and list components * Better loading indicator on list with streaming result [ci skip] * Add new board and list buttons [ci skip] * Post new query [ci skip] * Added creation of new board lists with persisted queries [ci skip] * Render placeholder row in empty queries [ci skip] * Save queries in grids [ci skip] * Renaming queries [ci skip] * Add existing work packages to board [ci skip] * Introduce card view component for work packages * Extend grids to allow project scope for boards (#7025) Extends the grid backend to also be able to handle boards. In particular, it adds the ability of boards to be attached to projects and changes the page property of grids to a scope property that better describes that more than one board can belong to the same scope (e.g. /projects/:project_id/boards). For a fully featured board, though, widgets need to be able to store options, so that they can store queries. Those widgets might also need to have custom processing and validation. That part has not been implemented. * introduce project association for boards * have dedicated grid registration classes * update and create form for board grids * extract defaults into grid registration [ci skip] * Add drag and drop to card view [ci skip] * Add options to grid * Fix option migration name * Renaming boards [ci skip] * Frontend deletion of boards * Avoid map on NodeList which doesnt exist [ci skip] * Add inline create to boards [ci skip] * Smaller create button [ci skip] * Add navigation for boards * Make inner grid same height * Replace index page with table * Workaround for widget registration [ci skip] * Fixed height for cards and tables [ci skip] * Implement escape as cancel d&d action [ci skip] * Fix and extend grid specs for name and options * Extend board specs for required name * Fix migration for MySQL references https://stackoverflow.com/a/45825566/420614 * Make board list extend from widget Since we cannot configure widgets yet, it's not yet possible to use a board-list widget anywhere. * Fix specs * Fix escape listener removal [ci skip] * Fix renamed to_path in relation spec [ci skip] * Allow deletion of grids for boards * Avoid reloading resource multiple times with replays * Frontend synchronization on deletion [ci skip] * Delete through table * Use work packages board path * Use work packages board path * Fix augmented columns breaking re-rendering * Fix duplicated permission with forums * Strengthen tab switch in specs * Add hidden flag for project-context queries Allows the API to create a hidden query that will not be rendered to the user even if it is within a project context. * private queries * Add hidden flag for project-context queries Allows the API to create a hidden query that will not be rendered to the user even if it is within a project context. * Move boards below work packages * Add Board configuration modal * Fix reloading with onPush * Saving / Switching of display mode [ci skip] * Extract wp-query-selectable-title into common component * Fix renaming of board-list * Fix auto-hide notifications in boards * Add permissions to seeders * Reorder lists in board * Linting * Remove default gravatar from settings * Show assignees avatar in the card view of WPs * Fix specs * Add missing method * Fix timeline icon * Use URL as input to be able to show avatars for groups, too * Fix test * Add further specs * Use correct data attribute to avoid unnecessary data base calls * Add further specs * Deletion of board lists * Pass permission via gon to decide whether we can create boards * Fix rename spec * Cherry-pick of 7873d59 and 30abc7f
6 years ago
unremovable: "cannot be removed."
wrong_length: "is the wrong length (should be %{count} characters)."
models:
[37868] Whitelist for attachment mime types and extensions on upload (#9431) * Add setting for whitelist * Make attachments API BaseServices compatible * Add prepare service and contract * Correctly pass the filename to the UploadedFile * Add presence check to filename * Fix expected validation message * We no longer raise a multipart error when metadata is empty * Fix filesize validation on prepared uploads * Add parser error if invalid metadata json * When attachment is not saved, use filename property * Return correct error message on JSON parser erroro * Fix specs * Use attachment upload representer * Fix direct uploads mocks with new service layer * Lint * Fix export job using attachment service * Fix IFC controller using attachment prepare service * Fix export job * RenameRename params_getter to params_source * Fix mail handler using attachment service * Fix usage of attachment create service in documents * Reuse shared examples for document attachment spec * Fix stubbed attachment service in export job spec * Use admin user in backup spec * Fix export job for bim * Fix attachment integration spec * Fix issues_controller spec * Make budget resource spec reuse common examples * Fix attachment parsing representer spec * Replace prepare part of attachment spec into separate service spec * Clear cache for login spec * Convert document create/update into services * Budget services * Allow options to be passed to property twin * Remove setting author on budget initialize * Replace meetings update with services * Replace ifc models attachment handling with services * Don't check uploader if changed by system * Fix uploader being changed by system * Replace wiki page attach_files with attachable services * Replace avatar saving * Replace snapshot attach_files * Skip double validation when container present * Set snapshot through attachment service * Remove attach_files * Validate content type in contract * Enforce writing the content type without accepting user input * Expect changed content_type * Fix content of viewpoint image to get correct content type * Fix tsv spec * Add create contract spec * Bypass whitelist in internal services when conflicting with user * Fix expects in specs after whitelist bypass * Render contract errors for wiki * Add before_hook to bodied to allow to pre-authorize permissions * Budget errors from contract * Document errors from contract
3 years ago
attachment:
attributes:
content_type:
not_whitelisted: "is set to '%{value}', which is not whitelisted for uploading."
capability:
context:
global: 'Global'
query:
filters:
minimum: "need to include at least one filter for principal, context or id with the '=' operator."
custom_field:
at_least_one_custom_option: "At least one option needs to be available."
7 years ago
custom_actions:
only_one_allowed: "(%{name}) only one value is allowed."
empty: "(%{name}) value can't be empty."
inclusion: "(%{name}) value is not set to one of the allowed values."
not_logged_in: "(%{name}) value cannot be set because you are not logged in."
not_an_integer: "(%{name}) is not an integer."
smaller_than_or_equal_to: "(%{name}) must be smaller than or equal to %{count}."
greater_than_or_equal_to: "(%{name}) must be greater than or equal to %{count}."
format: "%{message}"
doorkeeper/application:
attributes:
redirect_uri:
fragment_present: 'cannot contain a fragment.'
invalid_uri: 'must be a valid URI.'
relative_uri: 'must be an absolute URI.'
secured_uri: 'must be an HTTPS/SSL URI.'
forbidden_uri: 'is forbidden by the server.'
scopes:
not_match_configured: "doesn't match available scopes."
enterprise_token:
unreadable: "can't be read. Are you sure it is a support token?"
grids/grid:
overlaps: 'overlap.'
outside: 'is outside of the grid.'
end_before_start: 'end value needs to be larger than the start value.'
[26688] In-app notifications (#9399) * Add bell icon to icon font * Add in app notification in top menu * Add fullscreen modal * Add notification modal and items * Style items * Toggle details of item * Mark all read * Add no results box * wip specification for event api * Add events table, query and index * Send out events from WP notification mailer job There we have the recipients present * Add cleanup job for older events with a setting * Hide bell notification when not logged * Add specs for events API index/show * Fix setting yml key * remove pry in event creation * Fix before hook in events API to after_validation * Fix polymorphic association raising exception for aggregated journals * Fix typo in read_ian * Fix yml entry for mentioned * Add read/unread post actions to event API and add specs * Wire up API to frontend * Fix order on events * Switch to unread in notification * Add event query * rename WPEventService * route wp mail sending over events * rename spec methods * author becomes watcher * correct message call signature * rename events to notifications * renname parameter to reflect notification nature * create author watcher for existing work packages * Merge unreadCount from store * Take a stab at polymorphic representers * Fix link generation in polymorphic resources For journals, no title is being generated however * Fix frontend model for context * Use timer for polling * add notification_setting data layer * Fix show resource spec * Fix duplicate class in notification bell item * Add minimal feature spec for notification * API for notification settings * Persist notifications * adapt work package notification creation to notification settings * extract notified_on_all * consolidate wp#recipients * concentrate wp notification in journal service * simplify methods * Remove unused patch endpoint * Add specs for rendering and parsing notification settings * Contract spec * Update service spec * adapt specs * Angular notifications frontend commit e29dced64699eb5f2443b9307c78343c9a58d1ee Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 17:34:50 2021 +0200 Create Akita store and query for notification settings commit 1a45c26c1a0c147d15393e49d2625aca4851a64d Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 11:09:25 2021 +0200 Remove tabs from notificaition settings page commit 0ea21e90c13a197f8bf2cfba1b60ddcff4e5e827 Author: Oliver Günther <mail@oliverguenther.de> Date: Sun Jun 20 21:55:48 2021 +0200 WIP in app settings * migrate notification data * add project visible filter to project query * Add inline-create and table display grouped by project * Add notifications under admin/users * Remove notifications partial * Rename notififcations store to user preferences store * Add setting for self_notified and hook that up to the backend * Add aria-label to table checkboxes * Restyle table and toolbar * replace remains of mail_notifications attribute * initialize notification settings for new user * adapt my_preferences references * reenable no self notified for documents * adapt specs * Avoid has_many :notifcation_settings Rails magically autosaves the user's preferences when the user gets saved, which somehow also tries to save the notfifications even when unchanged. This breaks some specs such as the avatar upload spec. As we can't update the assocation through rails anyway, just delegate to the user for reading instead. * Restore update method of notification settings * Restore update spec * fix spec syntax * lint scss * linting * Fix content_tag for bell icon * Add feature specs for notification settings * Disable ContentTag cop * use visible filter to get projects for notification The visible filter will reduce the project list down to the set of projects visible to the user provided as a parameter. This includes public projects. * test for actual mail sending * adapt me resource path this.apiV3Service.users.me changed its type in 0d6c0b6bc7620de94e00e72b36d6cbc1ec4c8db4 * Implement changed migration * Linting * Add actor to notification representer * Fix factory creating a duplicate WP journal * Add work packages loading and journal details to notification entry component * IAN basic facets, keep and expanded states. * Fix notification bell spec * Render body separately and add auto updating relative time * Add fixedTime title * Add actor to notification entry * Fix clicking links on work package and project * Tiny styling changes on entry row * Disable count in notification if larger than 99 (wont fit) * Introduce virtual scrolling to entry table * allow delaying & prevent mail sending if ain read Introduces a setting to delay mail sending after a journal aggregation time has expired. That way, users can confirm a notification in app. If they do before the delay expires, no mail is sent out additionally for that user. * consolidate notifications (in&out) into shared admin menu Co-authored-by: ulferts <jens.ulferts@googlemail.com> Co-authored-by: Wieland Lindenthal <w.lindenthal@forkmerge.com>
3 years ago
notifications:
at_least_one_channel: 'At least one channel for sending notifications needs to be specified.'
attributes:
read_ian:
read_on_creation: 'cannot be set to true on notification creation.'
read_mail:
[26688] In-app notifications (#9399) * Add bell icon to icon font * Add in app notification in top menu * Add fullscreen modal * Add notification modal and items * Style items * Toggle details of item * Mark all read * Add no results box * wip specification for event api * Add events table, query and index * Send out events from WP notification mailer job There we have the recipients present * Add cleanup job for older events with a setting * Hide bell notification when not logged * Add specs for events API index/show * Fix setting yml key * remove pry in event creation * Fix before hook in events API to after_validation * Fix polymorphic association raising exception for aggregated journals * Fix typo in read_ian * Fix yml entry for mentioned * Add read/unread post actions to event API and add specs * Wire up API to frontend * Fix order on events * Switch to unread in notification * Add event query * rename WPEventService * route wp mail sending over events * rename spec methods * author becomes watcher * correct message call signature * rename events to notifications * renname parameter to reflect notification nature * create author watcher for existing work packages * Merge unreadCount from store * Take a stab at polymorphic representers * Fix link generation in polymorphic resources For journals, no title is being generated however * Fix frontend model for context * Use timer for polling * add notification_setting data layer * Fix show resource spec * Fix duplicate class in notification bell item * Add minimal feature spec for notification * API for notification settings * Persist notifications * adapt work package notification creation to notification settings * extract notified_on_all * consolidate wp#recipients * concentrate wp notification in journal service * simplify methods * Remove unused patch endpoint * Add specs for rendering and parsing notification settings * Contract spec * Update service spec * adapt specs * Angular notifications frontend commit e29dced64699eb5f2443b9307c78343c9a58d1ee Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 17:34:50 2021 +0200 Create Akita store and query for notification settings commit 1a45c26c1a0c147d15393e49d2625aca4851a64d Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 11:09:25 2021 +0200 Remove tabs from notificaition settings page commit 0ea21e90c13a197f8bf2cfba1b60ddcff4e5e827 Author: Oliver Günther <mail@oliverguenther.de> Date: Sun Jun 20 21:55:48 2021 +0200 WIP in app settings * migrate notification data * add project visible filter to project query * Add inline-create and table display grouped by project * Add notifications under admin/users * Remove notifications partial * Rename notififcations store to user preferences store * Add setting for self_notified and hook that up to the backend * Add aria-label to table checkboxes * Restyle table and toolbar * replace remains of mail_notifications attribute * initialize notification settings for new user * adapt my_preferences references * reenable no self notified for documents * adapt specs * Avoid has_many :notifcation_settings Rails magically autosaves the user's preferences when the user gets saved, which somehow also tries to save the notfifications even when unchanged. This breaks some specs such as the avatar upload spec. As we can't update the assocation through rails anyway, just delegate to the user for reading instead. * Restore update method of notification settings * Restore update spec * fix spec syntax * lint scss * linting * Fix content_tag for bell icon * Add feature specs for notification settings * Disable ContentTag cop * use visible filter to get projects for notification The visible filter will reduce the project list down to the set of projects visible to the user provided as a parameter. This includes public projects. * test for actual mail sending * adapt me resource path this.apiV3Service.users.me changed its type in 0d6c0b6bc7620de94e00e72b36d6cbc1ec4c8db4 * Implement changed migration * Linting * Add actor to notification representer * Fix factory creating a duplicate WP journal * Add work packages loading and journal details to notification entry component * IAN basic facets, keep and expanded states. * Fix notification bell spec * Render body separately and add auto updating relative time * Add fixedTime title * Add actor to notification entry * Fix clicking links on work package and project * Tiny styling changes on entry row * Disable count in notification if larger than 99 (wont fit) * Introduce virtual scrolling to entry table * allow delaying & prevent mail sending if ain read Introduces a setting to delay mail sending after a journal aggregation time has expired. That way, users can confirm a notification in app. If they do before the delay expires, no mail is sent out additionally for that user. * consolidate notifications (in&out) into shared admin menu Co-authored-by: ulferts <jens.ulferts@googlemail.com> Co-authored-by: Wieland Lindenthal <w.lindenthal@forkmerge.com>
3 years ago
read_on_creation: 'cannot be set to true on notification creation.'
read_mail_digest:
read_on_creation: 'cannot be set to true on notification creation.'
reason_ian:
no_notification_reason: 'cannot be blank as IAN is chosen as a channel.'
reason_mail:
no_notification_reason: 'cannot be blank as mail is chosen as a channel.'
reason_mail_digest:
no_notification_reason: 'cannot be blank as mail digest is chosen as a channel.'
parse_schema_filter_params_service:
attributes:
base:
unsupported_operator: "The operator is not supported."
invalid_values: "A value is invalid."
id_filter_required: "An 'id' filter is required."
project:
archived_ancestor: 'The project has an archived ancestor.'
foreign_wps_reference_version: 'Work packages in non descendant projects reference versions of the project or its descendants.'
attributes:
types:
in_use_by_work_packages: "still in use by work packages: %{types}"
enabled_modules:
dependency_missing: "The module '%{dependency}' needs to be enabled as well since the module '%{module}' depends on it."
format: "%{message}"
query:
attributes:
project:
error_not_found: "not found"
public:
error_unauthorized: "- The user has no permission to create public views."
group_by:
invalid: "Can't group by: %{value}"
format: "%{message}"
column_names:
invalid: "Invalid query column: %{value}"
format: "%{message}"
sort_criteria:
invalid: "Can't sort by column: %{value}"
format: "%{message}"
group_by_hierarchies_exclusive: "is mutually exclusive with group by '%{group_by}'. You cannot activate both."
filters:
custom_fields:
inexistent: "There is no custom field for the filter."
invalid: "The custom field is not valid in the given context."
queries/filters/base:
attributes:
values:
inclusion: "filter has invalid values."
format: "%{message}"
relation:
typed_dag:
circular_dependency: "The relationship creates a circle of relationships."
attributes:
to:
error_not_found: "work package in `to` position not found or not visible"
error_readonly: "an existing relation's `to` link is immutable"
from:
error_not_found: "work package in `from` position not found or not visible"
error_readonly: "an existing relation's `from` link is immutable"
repository:
not_available: "SCM vendor is not available"
not_whitelisted: "is not allowed by the configuration."
invalid_url: "is not a valid repository URL or path."
must_not_be_ssh: "must not be an SSH url."
no_directory: "is not a directory."
role:
attributes:
permissions:
dependency_missing: "need to also include '%{dependency}' as '%{permission}' is selected."
time_entry:
attributes:
hours:
day_limit: "is too high as a maximum of 24 hours can be logged per date."
wiki_page:
attributes:
slug:
undeducible: "cannot be deduced from the title '%{title}'."
work_package:
is_not_a_valid_target_for_time_entries: "Work package #%{id} is not a valid target for reassigning the time entries."
attributes:
due_date:
not_start_date: "is not on start date, although this is required for milestones."
parent:
cannot_be_milestone: "cannot be a milestone."
cannot_be_self_assigned: "cannot be assigned to itself."
cannot_be_in_another_project: "cannot be in another project."
not_a_valid_parent: "is invalid."
start_date:
violates_relationships: "can only be set to %{soonest_start} or later so as not to violate the work package's relationships."
status_id:
status_transition_invalid: "is invalid because no valid transition exists from old to new status for the current user's roles."
status_invalid_in_type: "is invalid because the current status does not exist in this type."
type:
cannot_be_milestone_due_to_children: "cannot be a milestone because this work package has children."
priority_id:
only_active_priorities_allowed: "needs to be active."
category:
only_same_project_categories_allowed:
"The category of a work package must be within the same project as the work package."
does_not_exist: "The specified category does not exist."
estimated_hours:
only_values_greater_or_equal_zeroes_allowed: "must be >= 0."
type:
attributes:
attribute_groups:
attribute_unknown: "Invalid work package attribute used."
attribute_unknown_name: "Invalid work package attribute used: %{attribute}"
duplicate_group: "The group name '%{group}' is used more than once. Group names must be unique."
query_invalid: "The embedded query '%{group}' is invalid: %{details}"
group_without_name: "Unnamed groups are not allowed."
user:
attributes:
password:
weak: "Must contain characters of the following classes (at least %{min_count} of %{all_count}): %{rules}."
lowercase: "lowercase (e.g. 'a')"
uppercase: "uppercase (e.g. 'A')"
numeric: "numeric (e.g. '1')"
special: "special (e.g. '%')"
reused:
one: "has been used before. Please choose one that is different from your last one."
other: "has been used before. Please choose one that is different from your last %{count}."
match:
confirm: "Confirm new password."
description: "'Password confirmation' should match the input in the 'New password' field."
status:
invalid_on_create: "is not a valid status for new users."
auth_source:
error_not_found: "not found"
member:
principal_blank: "Please choose at least one user or group."
role_blank: "need to be assigned."
attributes:
roles:
ungrantable: "has an unassignable role."
principal:
unassignable: "cannot be assigned to a project."
version:
undeletable_work_packages_attached: "The version cannot be deleted as it has work packages attached to it."
status:
readonly_default_exlusive: "can not be activated for statuses that are marked default."
template:
body: "Please check the following fields:"
header:
one: "1 error prohibited this %{model} from being saved"
other: "%{count} errors prohibited this %{model} from being saved"
models:
attachment: "File"
attribute_help_text: "Attribute help text"
forum: "Forum"
comment: "Comment"
custom_action: "Custom action"
custom_field: "Custom field"
group: "Group"
category: "Category"
status: "Work package status"
member: "Member"
news: "News"
[26688] In-app notifications (#9399) * Add bell icon to icon font * Add in app notification in top menu * Add fullscreen modal * Add notification modal and items * Style items * Toggle details of item * Mark all read * Add no results box * wip specification for event api * Add events table, query and index * Send out events from WP notification mailer job There we have the recipients present * Add cleanup job for older events with a setting * Hide bell notification when not logged * Add specs for events API index/show * Fix setting yml key * remove pry in event creation * Fix before hook in events API to after_validation * Fix polymorphic association raising exception for aggregated journals * Fix typo in read_ian * Fix yml entry for mentioned * Add read/unread post actions to event API and add specs * Wire up API to frontend * Fix order on events * Switch to unread in notification * Add event query * rename WPEventService * route wp mail sending over events * rename spec methods * author becomes watcher * correct message call signature * rename events to notifications * renname parameter to reflect notification nature * create author watcher for existing work packages * Merge unreadCount from store * Take a stab at polymorphic representers * Fix link generation in polymorphic resources For journals, no title is being generated however * Fix frontend model for context * Use timer for polling * add notification_setting data layer * Fix show resource spec * Fix duplicate class in notification bell item * Add minimal feature spec for notification * API for notification settings * Persist notifications * adapt work package notification creation to notification settings * extract notified_on_all * consolidate wp#recipients * concentrate wp notification in journal service * simplify methods * Remove unused patch endpoint * Add specs for rendering and parsing notification settings * Contract spec * Update service spec * adapt specs * Angular notifications frontend commit e29dced64699eb5f2443b9307c78343c9a58d1ee Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 17:34:50 2021 +0200 Create Akita store and query for notification settings commit 1a45c26c1a0c147d15393e49d2625aca4851a64d Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 11:09:25 2021 +0200 Remove tabs from notificaition settings page commit 0ea21e90c13a197f8bf2cfba1b60ddcff4e5e827 Author: Oliver Günther <mail@oliverguenther.de> Date: Sun Jun 20 21:55:48 2021 +0200 WIP in app settings * migrate notification data * add project visible filter to project query * Add inline-create and table display grouped by project * Add notifications under admin/users * Remove notifications partial * Rename notififcations store to user preferences store * Add setting for self_notified and hook that up to the backend * Add aria-label to table checkboxes * Restyle table and toolbar * replace remains of mail_notifications attribute * initialize notification settings for new user * adapt my_preferences references * reenable no self notified for documents * adapt specs * Avoid has_many :notifcation_settings Rails magically autosaves the user's preferences when the user gets saved, which somehow also tries to save the notfifications even when unchanged. This breaks some specs such as the avatar upload spec. As we can't update the assocation through rails anyway, just delegate to the user for reading instead. * Restore update method of notification settings * Restore update spec * fix spec syntax * lint scss * linting * Fix content_tag for bell icon * Add feature specs for notification settings * Disable ContentTag cop * use visible filter to get projects for notification The visible filter will reduce the project list down to the set of projects visible to the user provided as a parameter. This includes public projects. * test for actual mail sending * adapt me resource path this.apiV3Service.users.me changed its type in 0d6c0b6bc7620de94e00e72b36d6cbc1ec4c8db4 * Implement changed migration * Linting * Add actor to notification representer * Fix factory creating a duplicate WP journal * Add work packages loading and journal details to notification entry component * IAN basic facets, keep and expanded states. * Fix notification bell spec * Render body separately and add auto updating relative time * Add fixedTime title * Add actor to notification entry * Fix clicking links on work package and project * Tiny styling changes on entry row * Disable count in notification if larger than 99 (wont fit) * Introduce virtual scrolling to entry table * allow delaying & prevent mail sending if ain read Introduces a setting to delay mail sending after a journal aggregation time has expired. That way, users can confirm a notification in app. If they do before the delay expires, no mail is sent out additionally for that user. * consolidate notifications (in&out) into shared admin menu Co-authored-by: ulferts <jens.ulferts@googlemail.com> Co-authored-by: Wieland Lindenthal <w.lindenthal@forkmerge.com>
3 years ago
notification:
one: "Notification"
other: "Notifications"
Placeholder user services and administration (#8944) * Adding placeholder user contracts * Adding create, update, and delete services for placeholder users * WIP: Adding Placeholder User contract specs [ci skip] * Extract contract validation into common helper * Add common validation in BaseContract + common example for admin checks * Introduce common ModelContract shared context for validations * WIP: PlaceholderUser controller, i18n, and routes [ci skip] * Placeholder users index page and query - moved all group related scopes from User to Principal to make them also available in PlaceholderUser. * end * Create PlaceholderUser * Feature spec for editing a placeholder user * Manage PlaceholderUser memberships The managment of memberships is pretty similar for User and PlaceholderUser. This commit extacts the similarities and uses them for both. * General partial and show view for PlaceholderUser * Delete obosolete partial * Allow RequireAdminGuard to be used as a module function * Fix I18n for confirmation text * Smaller code improvements * Fix: Syntax for accessing status enums was wrong. * Use UpdateService for updating a placeholder user * Add spec for PlaceholderUsersController * First code improvements after code review. - more improvements to come. * Further code improvements after review ... still more to come * Correct namespace of delete service * Fix: Make placeholder user contract validate * Remove :type attribute from base contract of User and PlaceholerUser ...and add it to the CreateContracts. Also add type validations. Further extract shared examples for placeholder user attribute validation * Refactor: Extract membership hook calls to helper * Fix redirect paths for membership controllers * Specs already present in shared exampels. * Fix duplicates routes for users and placeholder users * Fix user path * Add attribute name and lastname We don't need a writeable check as both are equally writable * Replace more references to tab_edit_user_path * Skip specs for PlaceholderUsers::DeletionService We will tackle that service in a separate PR. * Fix module usage of RequireAdminGuard * Fix group filter for placeholder users * Fix invalid reference to expect_valid * Fix: Fix tabbed edit path for placeholder users * Fix status filtering on users * Linting * Improve generalisation of individual principal filter cell - Check for presence of groups and statuses in order to toggle visibility of their UI element. - Remove groups from placeholder user controller and cell initialization and options * Fix selector on groups assign * Remove using_shared_fixtures Co-authored-by: Oliver Günther <mail@oliverguenther.de>
4 years ago
placeholder_user: "Placeholder user"
project: "Project"
query: "Custom query"
role:
[26688] In-app notifications (#9399) * Add bell icon to icon font * Add in app notification in top menu * Add fullscreen modal * Add notification modal and items * Style items * Toggle details of item * Mark all read * Add no results box * wip specification for event api * Add events table, query and index * Send out events from WP notification mailer job There we have the recipients present * Add cleanup job for older events with a setting * Hide bell notification when not logged * Add specs for events API index/show * Fix setting yml key * remove pry in event creation * Fix before hook in events API to after_validation * Fix polymorphic association raising exception for aggregated journals * Fix typo in read_ian * Fix yml entry for mentioned * Add read/unread post actions to event API and add specs * Wire up API to frontend * Fix order on events * Switch to unread in notification * Add event query * rename WPEventService * route wp mail sending over events * rename spec methods * author becomes watcher * correct message call signature * rename events to notifications * renname parameter to reflect notification nature * create author watcher for existing work packages * Merge unreadCount from store * Take a stab at polymorphic representers * Fix link generation in polymorphic resources For journals, no title is being generated however * Fix frontend model for context * Use timer for polling * add notification_setting data layer * Fix show resource spec * Fix duplicate class in notification bell item * Add minimal feature spec for notification * API for notification settings * Persist notifications * adapt work package notification creation to notification settings * extract notified_on_all * consolidate wp#recipients * concentrate wp notification in journal service * simplify methods * Remove unused patch endpoint * Add specs for rendering and parsing notification settings * Contract spec * Update service spec * adapt specs * Angular notifications frontend commit e29dced64699eb5f2443b9307c78343c9a58d1ee Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 17:34:50 2021 +0200 Create Akita store and query for notification settings commit 1a45c26c1a0c147d15393e49d2625aca4851a64d Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 11:09:25 2021 +0200 Remove tabs from notificaition settings page commit 0ea21e90c13a197f8bf2cfba1b60ddcff4e5e827 Author: Oliver Günther <mail@oliverguenther.de> Date: Sun Jun 20 21:55:48 2021 +0200 WIP in app settings * migrate notification data * add project visible filter to project query * Add inline-create and table display grouped by project * Add notifications under admin/users * Remove notifications partial * Rename notififcations store to user preferences store * Add setting for self_notified and hook that up to the backend * Add aria-label to table checkboxes * Restyle table and toolbar * replace remains of mail_notifications attribute * initialize notification settings for new user * adapt my_preferences references * reenable no self notified for documents * adapt specs * Avoid has_many :notifcation_settings Rails magically autosaves the user's preferences when the user gets saved, which somehow also tries to save the notfifications even when unchanged. This breaks some specs such as the avatar upload spec. As we can't update the assocation through rails anyway, just delegate to the user for reading instead. * Restore update method of notification settings * Restore update spec * fix spec syntax * lint scss * linting * Fix content_tag for bell icon * Add feature specs for notification settings * Disable ContentTag cop * use visible filter to get projects for notification The visible filter will reduce the project list down to the set of projects visible to the user provided as a parameter. This includes public projects. * test for actual mail sending * adapt me resource path this.apiV3Service.users.me changed its type in 0d6c0b6bc7620de94e00e72b36d6cbc1ec4c8db4 * Implement changed migration * Linting * Add actor to notification representer * Fix factory creating a duplicate WP journal * Add work packages loading and journal details to notification entry component * IAN basic facets, keep and expanded states. * Fix notification bell spec * Render body separately and add auto updating relative time * Add fixedTime title * Add actor to notification entry * Fix clicking links on work package and project * Tiny styling changes on entry row * Disable count in notification if larger than 99 (wont fit) * Introduce virtual scrolling to entry table * allow delaying & prevent mail sending if ain read Introduces a setting to delay mail sending after a journal aggregation time has expired. That way, users can confirm a notification in app. If they do before the delay expires, no mail is sent out additionally for that user. * consolidate notifications (in&out) into shared admin menu Co-authored-by: ulferts <jens.ulferts@googlemail.com> Co-authored-by: Wieland Lindenthal <w.lindenthal@forkmerge.com>
3 years ago
one: "Role"
other: "Roles"
type: "Type"
user: "User"
version: "Version"
wiki: "Wiki"
wiki_page: "Wiki page"
workflow: "Workflow"
work_package: "Work package"
'doorkeeper/application': "OAuth application"
errors:
header_invalid_fields: "There were problems with the following fields:"
field_erroneous_label: "This field is invalid: %{full_errors}\nPlease enter a valid value."
activity:
created: "Created: %{title}"
updated: "Updated: %{title}"
# common attributes of all models
attributes:
active: "Active"
assigned_to: "Assignee"
assignee: "Assignee"
attachments: "Attachments"
author: "Author"
base: "General Error:"
blocks_ids: "IDs of blocked work packages"
category: "Category"
comment: "Comment"
comments: "Comment"
content: "Content"
color: "Color"
created_at: "Created on"
custom_options: "Possible values"
custom_values: "Custom fields"
date: "Date"
default_columns: "Default columns"
description: "Description"
derived_due_date: "Derived finish date"
derived_estimated_hours: "Derived estimated time"
derived_start_date: "Derived start date"
display_sums: "Display Sums"
due_date: "Finish date"
estimated_hours: "Estimated time"
estimated_time: "Estimated time"
firstname: "First name"
group: "Group"
groups: "Groups"
name: "Group name"
10 years ago
id: "ID"
is_default: "Default value"
is_for_all: "For all projects"
is_public: "Public"
# kept for backwards compatibility
issue: "Work package"
lastname: "Last name"
login: "Username"
mail: "Email"
name: "Name"
password: "Password"
priority: "Priority"
project: "Project"
public: "Public"
responsible: "Accountable"
role: "Role"
roles: "Roles"
start_date: "Start date"
status: "Status"
subject: "Subject"
summary: "Summary"
title: "Title"
type: "Type"
updated_at: "Updated on"
updated_on: "Updated on"
uploader: "Uploader"
user: "User"
version: "Version"
work_package: "Work package"
backup:
label_backup_token: "Backup token"
label_create_token: "Create backup token"
label_delete_token: "Delete backup token"
label_reset_token: "Reset backup token"
label_token_users: "The following users have active backup tokens"
reset_token:
action_create: Create
action_reset: Reset
heading_reset: "Reset backup token"
heading_create: "Create backup token"
implications: >
Enabling backups will allow any user with the required permissions and this backup token
to download a backup containing all data of this OpenProject installation.
This includes the data of all other users.
info: >
You will need to generate a backup token to be able to create a backup.
Each time you want to request a backup you will have to provide this token.
You can delete the backup token to disable backups for this user.
verification: >
Enter %{word} to confirm you want to %{action} the backup token.
verification_word_reset: reset
verification_word_create: create
warning: >
When you create a new token you will only be allowed to request a backup after
24 hours. This is a safety measure. After that you can request a backup any time using that token.
text_token_deleted:
Backup token deleted. Backups are now disabled.
error:
invalid_token: Invalid or missing backup token
token_cooldown: The backup token will be valid in %{hours} hours.
backup_pending: There is already a backup pending.
limit_reached: You can only do %{limit} backups per day.
button_add: "Add"
button_add_comment: "Add comment"
button_add_member: Add member
button_add_watcher: "Add watcher"
button_annotate: "Annotate"
button_apply: "Apply"
button_archive: "Archive"
button_back: "Back"
button_cancel: "Cancel"
button_change: "Change"
button_change_parent_page: "Change parent page"
button_change_password: "Change password"
button_check_all: "Check all"
button_clear: "Clear"
button_click_to_reveal: "Click to reveal"
button_close: 'Close'
button_collapse_all: "Collapse all"
button_configure: "Configure"
button_continue: "Continue"
button_copy: "Copy"
button_copy_and_follow: "Copy and follow"
button_create: "Create"
button_create_and_continue: "Create and continue"
button_delete: "Delete"
button_decline: "Decline"
button_delete_watcher: "Delete watcher %{name}"
button_download: "Download"
button_duplicate: "Duplicate"
button_edit: "Edit"
button_edit_associated_wikipage: "Edit associated Wiki page: %{page_title}"
button_expand_all: "Expand all"
button_filter: "Filter"
button_generate: "Generate"
button_list: "List"
button_lock: "Lock"
button_login: "Sign in"
button_move: "Move"
button_move_and_follow: "Move and follow"
button_print: "Print"
button_quote: "Quote"
button_remove: Remove
button_rename: "Rename"
button_replace: "Replace"
button_revoke: "Revoke"
button_reply: "Reply"
button_reset: "Reset"
button_rollback: "Rollback to this version"
button_save: "Save"
button_save_back: "Save and back"
button_show: "Show"
button_sort: "Sort"
button_submit: "Submit"
button_test: "Test"
button_unarchive: "Unarchive"
button_uncheck_all: "Uncheck all"
button_unlock: "Unlock"
button_unwatch: "Unwatch"
button_update: "Update"
6 years ago
button_upgrade: "Upgrade"
button_upload: "Upload"
button_view: "View"
button_watch: "Watch"
button_manage_menu_entry: "Configure menu item"
button_add_menu_entry: "Add menu item"
button_configure_menu_entry: "Configure menu item"
button_delete_menu_entry: "Delete menu item"
consent:
checkbox_label: I have noted and do consent to the above.
failure_message: Consent failed, cannot proceed.
title: User Consent
decline_warning_message: You have declined to consent and have been logged out.
user_has_consented: User has consented to your configured statement at the given time.
not_yet_consented: User has not consented yet, will be requested upon next login.
contact_mail_instructions: Define the mail address that users can reach a data controller to perform data change or removal requests.
contact_your_administrator: Please contact your administrator if you want to have your account deleted.
contact_this_mail_address: Please contact %{mail_address} if you want to have your account deleted.
text_update_consent_time: Check this box to force users to consent again. Enable when you have changed the legal aspect of the consent information above.
update_consent_last_time: "Last update of consent: %{update_time}"
copy_project:
title: 'Copy project "%{source_project_name}"'
9 years ago
started: "Started to copy project \"%{source_project_name}\" to \"%{target_project_name}\". You will be informed by mail as soon as \"%{target_project_name}\" is available."
failed: "Cannot copy project %{source_project_name}"
failed_internal: "Copying failed due to an internal error."
succeeded: "Created project %{target_project_name}"
errors: "Error"
project_custom_fields: 'Custom fields on project'
[34444] Projects copy APIv3 (#9149) * Create copy project endpoint * Add representers * Add _meta representer for copy module information * Add Meta payload representer * Extract parsing of copy attributes into service * Extract enqueue job for projects copy * Keep request object available in the bodied endpoint this allows us to access grape (e.g., for redirecting) * Add DelayedModify endpoint that redirects to job status * Use DelayedModify endpoint for copying projects * Add api paths for form/copy * Disable cache on ProjectCopyPayload * Add spec * Add resource spec * Extend schema for meta * Extend docs * Don't pass service result, but state as meta to forms * Use copy dependencies for naming copy options in API * Add description property for counting * Remove unused action attribute * Skip writable checks on meta property for payloads * Use prepend to allow create(...) usage with meta * Extend copy spec with custom fields usage * Add spec for copy flags * Add todos * Pass errors correctly to copy settings * Remove invalid parameters to copy that are now caught through project service * Remove duplicated validation * Linting * Make count a human readable, formattable description string * Make source count string readable * Provide the source project for generating the counts * Extract copying of attachments into sepearate dependent services This will allow the API to dynamically generate a copy association schema from each dependent service * Add spec for copy schema representer * Add payload representer spec * Also validate the model to pass the validations when copying * Make description optional and add note to schemas.apib * Add send_notifications to representer * Allow to configure sendNotifications * Allow bodied to receive a state process callback That allows us to manage the meta state on the API level, not on the service level * Make other services compatible with BaseCallable * Fix params passing from BaseCallable Wrapping a single hash into kwargs obviously loses their key indifference and we can't expect all services to use a single params object. Older services use kwargs * Copy wiki page with parent_id This will save some memory instead of memoizing the entire wiki page * Fix typo * Default to true for all copy associations That means if only a true value is passed, all other options will still be true * Do not try to copy attachments if the base dependency wasnt copied * Ensure null identifier gets rendered * Fix paths to the form and commit * Change redirect to an URL * Extend documentation on meta properties as table * Ensure we pass a default params if incoming params are nil Now that SetAttributes needs to splat params, they do no longer correctly get the no-param-default behavior of Ruby, so we need to explictly assign a default params hash * Fix expect for trailing path
4 years ago
x_objects_of_this_type:
zero: 'No objects of this type'
one: 'One object of this type'
other: '%{count} objects of this type'
text:
failed: "Could not copy project \"%{source_project_name}\" to project \"%{target_project_name}\"."
succeeded: "Copied project \"%{source_project_name}\" to \"%{target_project_name}\"."
create_new_page: "Wiki page"
date:
abbr_day_names: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"]
abbr_month_names: [~, "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
[32880] Display scheduling mode in work package view (full, split & table) (#8410) * Show icon next to start date depending on the scheduling mode * Show modal when opening date edit fields which shall be able to change the dates and the scheduling mode * Introduce flatpickr as a datepicker for the modal of the dateEditField * Use new datepicker within opDatePickerComponent * Reuse existing Datepicker class for better code abstraction * Set dates only when Instance is ready * Let augmentedDatePicker use generic DatePicker class, too. * Remove jQuery UI datepicker specific styles as they do not apply any more. * Use localized strings in new datepicker * Close datepicker only on click outside * Allow single and multi selection of dates and save changes * Update schedulingMode button correctly && remove unused method * Show combined field for start and end date within the WP single view * Show normal datepicker for most date fields and the modal with the extended datepicker only for startDate * Add datepicker edit field and component helper * Correctly save start and end date * Show correct default value for dateEditFields && Adapt some tests to new datepicker and combined date field * Fix date editor spec * Fix expecting datepicker for start/due date as milestone * Prevent overflow on body by using modal-portal class && make edit input for combinedDates visible again to show something in a create form * Only output one debounced change event for op datepicker * Show combined datepickerModal for dueDate in table, too && save correct scheduling value * Hide modal if the showing component gets destroyed * Correctly check for closed datepicker * Add spec for toggling scheduling mode * Fix setting dates to modal * Avoid too many (unnecessary) close events and use keydown instead * Fix date setting and add custom field date spec * Change layout of combined date picker modal * Switch from a range date picker to a multiple selection in order to be able to set only start or due date && Highlight date field that is changed next * Highlight range manually * Highlight dueDate initially when the user clicked on the due date field && handle special case that one of the values is not set yet. In this case we don't want to keep both values but only the newly clicked. * Move helper functions to own class && Improve the range selection to be able highlight ranges over multiple months && Prevent that a start date > due date can be chosen by setting minDate and maxDate * Adapt test to new way of changing the scheduling mode * Handle case that the user clicks on a already selected date and thus deselects it Co-authored-by: Oliver Günther <mail@oliverguenther.de>
4 years ago
abbr_week: 'Wk'
day_names: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]
formats:
# Use the strftime parameters for formats.
# When no format has been given, it uses default.
# You can provide other formats here if you like!
default: "%m/%d/%Y"
long: "%B %d, %Y"
short: "%b %d"
# Don't forget the nil at the beginning; there's no such thing as a 0th month
month_names: [~, "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]
# Used in date_select and datime_select.
order:
- :year
- :month
- :day
datetime:
distance_in_words:
about_x_hours:
one: "about 1 hour"
other: "about %{count} hours"
about_x_months:
one: "about 1 month"
other: "about %{count} months"
about_x_years:
one: "about 1 year"
other: "about %{count} years"
almost_x_years:
one: "almost 1 year"
other: "almost %{count} years"
half_a_minute: "half a minute"
less_than_x_minutes:
one: "less than a minute"
other: "less than %{count} minutes"
less_than_x_seconds:
one: "less than 1 second"
other: "less than %{count} seconds"
over_x_years:
one: "over 1 year"
other: "over %{count} years"
x_days:
one: "1 day"
other: "%{count} days"
x_minutes:
one: "1 minute"
other: "%{count} minutes"
x_months:
one: "1 month"
other: "%{count} months"
x_seconds:
one: "1 second"
other: "%{count} seconds"
units:
hour:
one: "hour"
other: "hours"
default_activity_development: "Development"
default_activity_management: "Management"
default_activity_other: "Other"
default_activity_specification: "Specification"
default_activity_support: "Support"
default_activity_testing: "Testing"
default_color_black: "Black"
default_color_blue: "Blue"
default_color_blue_dark: "Blue (dark)"
default_color_blue_light: "Blue (light)"
default_color_green_dark: "Green (dark)"
default_color_green_light: "Green (light)"
default_color_grey_dark: "Grey (dark)"
default_color_grey_light: "Grey (light)"
default_color_grey: "Grey"
default_color_magenta: "Magenta"
default_color_orange: "Orange"
default_color_red: "Red"
default_color_white: "White"
default_color_yellow: "Yellow"
default_status_closed: "Closed"
default_status_confirmed: "Confirmed"
default_status_developed: "Developed"
default_status_in_development: "In development"
default_status_in_progress: "In progress"
default_status_in_specification: "In specification"
default_status_in_testing: "In testing"
default_status_new: "New"
default_status_on_hold: "On hold"
default_status_rejected: "Rejected"
default_status_scheduled: "Scheduled"
default_status_specified: "Specified"
default_status_tested: "Tested"
default_status_test_failed: "Test failed"
default_status_to_be_scheduled: "To be scheduled"
default_priority_low: "Low"
default_priority_normal: "Normal"
default_priority_high: "High"
default_priority_immediate: "Immediate"
default_role_anonymous: "Anonymous"
default_role_developer: "Developer"
default_role_project_admin: "Project admin"
default_role_project_creator_and_staff_manager: "Staff and projects manager"
default_role_non_member: "Non member"
default_role_reader: "Reader"
default_role_member: "Member"
default_type: "Work Package"
default_type_bug: "Bug"
default_type_deliverable: "Deliverable"
default_type_epic: "Epic"
default_type_feature: "Feature"
default_type_milestone: "Milestone"
default_type_phase: "Phase"
default_type_task: "Task"
default_type_user_story: "User story"
description_active: "Active?"
description_attachment_toggle: "Show/Hide attachments"
description_autocomplete: >
This field uses autocomplete. While typing the title of a work
package you will receive a list of possible candidates. Choose one
using the arrow up and arrow down key and select it with tab or
enter. Alternatively you can enter the work package number directly.
description_available_columns: "Available Columns"
description_choose_project: "Projects"
description_compare_from: "Compare from"
description_compare_to: "Compare to"
description_current_position: "You are here: "
description_date_from: "Enter start date"
description_date_to: "Enter end date"
description_enter_number: "Enter number"
description_enter_text: "Enter text"
description_filter: "Filter"
description_filter_toggle: "Show/Hide filter"
description_category_reassign: "Choose category"
description_message_content: "Message content"
description_my_project: "You are member"
description_notes: "Notes"
description_parent_work_package: "Parent work package of current"
description_project_scope: "Search scope"
description_query_sort_criteria_attribute: "Sort attribute"
description_query_sort_criteria_direction: "Sort direction"
description_search: "Searchfield"
description_select_work_package: "Select work package"
description_selected_columns: "Selected Columns"
description_sub_work_package: "Sub work package of current"
description_toc_toggle: "Show/Hide table of contents"
description_wiki_subpages_reassign: "Choose new parent page"
# Text direction: Left-to-Right (ltr) or Right-to-Left (rtl)
direction: ltr
ee:
upsale:
form_configuration:
description: "Customize the form configuration with these additional features:"
add_groups: "Add new attribute groups"
rename_groups: "Rename attributes groups"
project_filters:
description_html: "Filtering and sorting on custom fields is an enterprise edition feature."
enumeration_activities: "Time tracking activities"
enumeration_work_package_priorities: "Work package priorities"
enumeration_reported_project_statuses: "Reported project status"
error_auth_source_sso_failed: "Single Sign-On (SSO) for user '%{value}' failed"
error_can_not_archive_project: "This project cannot be archived: %{errors}"
error_can_not_delete_entry: "Unable to delete entry"
error_can_not_delete_custom_field: "Unable to delete custom field"
error_can_not_delete_type: "This type contains work packages and cannot be deleted."
error_can_not_delete_standard_type: "Standard types cannot be deleted."
error_can_not_invite_user: "Failed to send invitation to user."
error_can_not_remove_role: "This role is in use and cannot be deleted."
error_can_not_reopen_work_package_on_closed_version: "A work package assigned to a closed version cannot be reopened"
error_can_not_find_all_resources: "Could not find all related resources to this request."
error_can_not_unarchive_project: "This project cannot be unarchived: %{errors}"
error_check_user_and_role: "Please choose a user and a role."
error_code: "Error %{code}"
error_cookie_missing: 'The OpenProject cookie is missing. Please ensure that cookies are enabled, as this application will not properly function without.'
error_custom_option_not_found: "Option does not exist."
6 years ago
error_enterprise_activation_user_limit: "Your account could not be activated (user limit reached). Please contact your administrator to gain access."
error_enterprise_token_invalid_domain: "The Enterprise Edition is not active. Your Enterprise token's domain (%{actual}) does not match the system's host name (%{expected})."
error_failed_to_delete_entry: 'Failed to delete this entry.'
error_in_dependent: "Error attempting to alter dependent object: %{dependent_class} #%{related_id} - %{related_subject}: %{error}"
error_invalid_selected_value: "Invalid selected value."
error_journal_attribute_not_present: "Journal does not contain attribute %{attribute}."
error_pdf_export_too_many_columns: "Too many columns selected for the PDF export. Please reduce the number of columns."
error_pdf_failed_to_export: "The PDF export could not be saved: %{error}"
error_token_authenticity: 'Unable to verify Cross-Site Request Forgery token. Did you try to submit data on multiple browsers or tabs? Please close all tabs and try again.'
error_work_package_done_ratios_not_updated: "Work package done ratios not updated."
error_work_package_not_found_in_project: "The work package was not found or does not belong to this project"
error_must_be_project_member: "must be project member"
error_migrations_are_pending: "Your OpenProject installation has pending database migrations. You have likely missed running the migrations on your last upgrade. Please check the upgrade guide to properly upgrade your installation."
error_migrations_visit_upgrade_guides: "Please visit our upgrade guide documentation"
error_no_default_work_package_status: "No default work package status is defined. Please check your configuration (Go to \"Administration -> Work package statuses\")."
error_no_type_in_project: "No type is associated to this project. Please check the Project settings."
error_omniauth_registration_timed_out: "The registration via an external authentication provider timed out. Please try again."
error_omniauth_invalid_auth: "The authentication information returned from the identity provider was invalid. Please contact your administrator for further help."
error_scm_command_failed: "An error occurred when trying to access the repository: %{value}"
error_scm_not_found: "The entry or revision was not found in the repository."
error_unable_delete_status: "The work package status cannot be deleted since it is used by at least one work package."
error_unable_delete_default_status: "Unable to delete the default work package status. Please select another default work package status before deleting the current one."
error_unable_to_connect: "Unable to connect (%{value})"
error_unable_delete_wiki: "Unable to delete the wiki page."
error_unable_update_wiki: "Unable to update the wiki page."
error_workflow_copy_source: "Please select a source type or role"
error_workflow_copy_target: "Please select target type(s) and role(s)"
error_menu_item_not_created: Menu item could not be added
error_menu_item_not_saved: Menu item could not be saved
error_wiki_root_menu_item_conflict: >
Can't rename "%{old_name}" to "%{new_name}" due to a conflict in the resulting menu item
with the existing menu item "%{existing_caption}" (%{existing_identifier}).
error_external_authentication_failed: "An error occurred during external authentication. Please try again."
error_attribute_not_highlightable: "Attribute(s) not highlightable: %{attributes}"
events:
project: 'Project edited'
changeset: 'Changeset edited'
message: Message edited
news: News
reply: Replied
time_entry: 'Timelog edited'
wiki_page: 'Wiki page edited'
work_package_closed: 'Work Package closed'
work_package_edit: 'Work Package edited'
work_package_note: 'Work Package note added'
export:
your_work_packages_export: "Your work packages export"
succeeded: "The export has completed successfully."
[37868] Whitelist for attachment mime types and extensions on upload (#9431) * Add setting for whitelist * Make attachments API BaseServices compatible * Add prepare service and contract * Correctly pass the filename to the UploadedFile * Add presence check to filename * Fix expected validation message * We no longer raise a multipart error when metadata is empty * Fix filesize validation on prepared uploads * Add parser error if invalid metadata json * When attachment is not saved, use filename property * Return correct error message on JSON parser erroro * Fix specs * Use attachment upload representer * Fix direct uploads mocks with new service layer * Lint * Fix export job using attachment service * Fix IFC controller using attachment prepare service * Fix export job * RenameRename params_getter to params_source * Fix mail handler using attachment service * Fix usage of attachment create service in documents * Reuse shared examples for document attachment spec * Fix stubbed attachment service in export job spec * Use admin user in backup spec * Fix export job for bim * Fix attachment integration spec * Fix issues_controller spec * Make budget resource spec reuse common examples * Fix attachment parsing representer spec * Replace prepare part of attachment spec into separate service spec * Clear cache for login spec * Convert document create/update into services * Budget services * Allow options to be passed to property twin * Remove setting author on budget initialize * Replace meetings update with services * Replace ifc models attachment handling with services * Don't check uploader if changed by system * Fix uploader being changed by system * Replace wiki page attach_files with attachable services * Replace avatar saving * Replace snapshot attach_files * Skip double validation when container present * Set snapshot through attachment service * Remove attach_files * Validate content type in contract * Enforce writing the content type without accepting user input * Expect changed content_type * Fix content of viewpoint image to get correct content type * Fix tsv spec * Add create contract spec * Bypass whitelist in internal services when conflicting with user * Fix expects in specs after whitelist bypass * Render contract errors for wiki * Add before_hook to bodied to allow to pre-authorize permissions * Budget errors from contract * Document errors from contract
3 years ago
failed: "The export has failed: %{message}"
format:
atom: "Atom"
csv: "CSV"
pdf: "PDF"
pdf_with_descriptions: "PDF with descriptions"
pdf_with_descriptions_and_attachments: "PDF with descriptions and attachments"
pdf_with_attachments: "PDF with attachments"
image:
omitted: "Image not exported."
7 years ago
extraction:
available:
pdftotext: "Pdftotext available (optional)"
unrtf: "Unrtf available (optional)"
catdoc: "Catdoc available (optional)"
xls2csv: "Xls2csv available (optional)"
catppt: "Catppt available (optional)"
tesseract: "Tesseract available (optional)"
7 years ago
general_csv_decimal_separator: "."
general_csv_encoding: "UTF-8"
general_csv_separator: ","
general_first_day_of_week: "7"
general_lang_name: "English"
general_pdf_encoding: "ISO-8859-1"
general_text_no: "no"
general_text_yes: "yes"
general_text_No: "No"
general_text_Yes: "Yes"
general_text_true: "true"
general_text_false: "false"
gui_validation_error: "1 error"
gui_validation_error_plural: "%{count} errors"
homescreen:
additional:
projects: "Newest visible projects in this instance."
no_visible_projects: "There are no visible projects in this instance."
users: "Newest registered users in this instance."
blocks:
community: "OpenProject community"
upsale:
title: "Upgrade to Enterprise Edition"
more_info: "More information"
links:
upgrade_enterprise_edition: "Upgrade to Enterprise Edition"
postgres_migration: "Migrating your installation to PostgreSQL"
user_guides: "User guides"
faq: "FAQ"
glossary: "Glossary"
shortcuts: "Shortcuts"
blog: "OpenProject blog"
forums: "Community forum"
newsletter: "Security alerts / Newsletter"
image_conversion:
imagemagick: 'Imagemagick'
journals:
5 years ago
changes_retracted: "The changes were retracted."
links:
configuration_guide: 'Configuration guide'
get_in_touch: "You have questions? Get in touch with us."
instructions_after_registration: "You can sign in as soon as your account has been activated by clicking %{signin}."
instructions_after_logout: "You can sign in again by clicking %{signin}."
instructions_after_error: "You can try to sign in again by clicking %{signin}. If the error persists, ask your admin for help."
menus:
[26688] In-app notifications (#9399) * Add bell icon to icon font * Add in app notification in top menu * Add fullscreen modal * Add notification modal and items * Style items * Toggle details of item * Mark all read * Add no results box * wip specification for event api * Add events table, query and index * Send out events from WP notification mailer job There we have the recipients present * Add cleanup job for older events with a setting * Hide bell notification when not logged * Add specs for events API index/show * Fix setting yml key * remove pry in event creation * Fix before hook in events API to after_validation * Fix polymorphic association raising exception for aggregated journals * Fix typo in read_ian * Fix yml entry for mentioned * Add read/unread post actions to event API and add specs * Wire up API to frontend * Fix order on events * Switch to unread in notification * Add event query * rename WPEventService * route wp mail sending over events * rename spec methods * author becomes watcher * correct message call signature * rename events to notifications * renname parameter to reflect notification nature * create author watcher for existing work packages * Merge unreadCount from store * Take a stab at polymorphic representers * Fix link generation in polymorphic resources For journals, no title is being generated however * Fix frontend model for context * Use timer for polling * add notification_setting data layer * Fix show resource spec * Fix duplicate class in notification bell item * Add minimal feature spec for notification * API for notification settings * Persist notifications * adapt work package notification creation to notification settings * extract notified_on_all * consolidate wp#recipients * concentrate wp notification in journal service * simplify methods * Remove unused patch endpoint * Add specs for rendering and parsing notification settings * Contract spec * Update service spec * adapt specs * Angular notifications frontend commit e29dced64699eb5f2443b9307c78343c9a58d1ee Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 17:34:50 2021 +0200 Create Akita store and query for notification settings commit 1a45c26c1a0c147d15393e49d2625aca4851a64d Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 11:09:25 2021 +0200 Remove tabs from notificaition settings page commit 0ea21e90c13a197f8bf2cfba1b60ddcff4e5e827 Author: Oliver Günther <mail@oliverguenther.de> Date: Sun Jun 20 21:55:48 2021 +0200 WIP in app settings * migrate notification data * add project visible filter to project query * Add inline-create and table display grouped by project * Add notifications under admin/users * Remove notifications partial * Rename notififcations store to user preferences store * Add setting for self_notified and hook that up to the backend * Add aria-label to table checkboxes * Restyle table and toolbar * replace remains of mail_notifications attribute * initialize notification settings for new user * adapt my_preferences references * reenable no self notified for documents * adapt specs * Avoid has_many :notifcation_settings Rails magically autosaves the user's preferences when the user gets saved, which somehow also tries to save the notfifications even when unchanged. This breaks some specs such as the avatar upload spec. As we can't update the assocation through rails anyway, just delegate to the user for reading instead. * Restore update method of notification settings * Restore update spec * fix spec syntax * lint scss * linting * Fix content_tag for bell icon * Add feature specs for notification settings * Disable ContentTag cop * use visible filter to get projects for notification The visible filter will reduce the project list down to the set of projects visible to the user provided as a parameter. This includes public projects. * test for actual mail sending * adapt me resource path this.apiV3Service.users.me changed its type in 0d6c0b6bc7620de94e00e72b36d6cbc1ec4c8db4 * Implement changed migration * Linting * Add actor to notification representer * Fix factory creating a duplicate WP journal * Add work packages loading and journal details to notification entry component * IAN basic facets, keep and expanded states. * Fix notification bell spec * Render body separately and add auto updating relative time * Add fixedTime title * Add actor to notification entry * Fix clicking links on work package and project * Tiny styling changes on entry row * Disable count in notification if larger than 99 (wont fit) * Introduce virtual scrolling to entry table * allow delaying & prevent mail sending if ain read Introduces a setting to delay mail sending after a journal aggregation time has expired. That way, users can confirm a notification in app. If they do before the delay expires, no mail is sent out additionally for that user. * consolidate notifications (in&out) into shared admin menu Co-authored-by: ulferts <jens.ulferts@googlemail.com> Co-authored-by: Wieland Lindenthal <w.lindenthal@forkmerge.com>
3 years ago
admin:
mail_notification: "Email notifications"
incoming_outgoing: "Incoming & Outgoing"
quick_add:
label: "Open quick add menu"
my_account:
access_tokens:
no_results:
title: "No access tokens to display"
description: "All of them have been disabled. They can be re-enabled in the administration menu."
access_token: "Access token"
headers:
action: "Action"
expiration: "Expires"
indefinite_expiration: "Never"
[26688] In-app notifications (#9399) * Add bell icon to icon font * Add in app notification in top menu * Add fullscreen modal * Add notification modal and items * Style items * Toggle details of item * Mark all read * Add no results box * wip specification for event api * Add events table, query and index * Send out events from WP notification mailer job There we have the recipients present * Add cleanup job for older events with a setting * Hide bell notification when not logged * Add specs for events API index/show * Fix setting yml key * remove pry in event creation * Fix before hook in events API to after_validation * Fix polymorphic association raising exception for aggregated journals * Fix typo in read_ian * Fix yml entry for mentioned * Add read/unread post actions to event API and add specs * Wire up API to frontend * Fix order on events * Switch to unread in notification * Add event query * rename WPEventService * route wp mail sending over events * rename spec methods * author becomes watcher * correct message call signature * rename events to notifications * renname parameter to reflect notification nature * create author watcher for existing work packages * Merge unreadCount from store * Take a stab at polymorphic representers * Fix link generation in polymorphic resources For journals, no title is being generated however * Fix frontend model for context * Use timer for polling * add notification_setting data layer * Fix show resource spec * Fix duplicate class in notification bell item * Add minimal feature spec for notification * API for notification settings * Persist notifications * adapt work package notification creation to notification settings * extract notified_on_all * consolidate wp#recipients * concentrate wp notification in journal service * simplify methods * Remove unused patch endpoint * Add specs for rendering and parsing notification settings * Contract spec * Update service spec * adapt specs * Angular notifications frontend commit e29dced64699eb5f2443b9307c78343c9a58d1ee Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 17:34:50 2021 +0200 Create Akita store and query for notification settings commit 1a45c26c1a0c147d15393e49d2625aca4851a64d Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 11:09:25 2021 +0200 Remove tabs from notificaition settings page commit 0ea21e90c13a197f8bf2cfba1b60ddcff4e5e827 Author: Oliver Günther <mail@oliverguenther.de> Date: Sun Jun 20 21:55:48 2021 +0200 WIP in app settings * migrate notification data * add project visible filter to project query * Add inline-create and table display grouped by project * Add notifications under admin/users * Remove notifications partial * Rename notififcations store to user preferences store * Add setting for self_notified and hook that up to the backend * Add aria-label to table checkboxes * Restyle table and toolbar * replace remains of mail_notifications attribute * initialize notification settings for new user * adapt my_preferences references * reenable no self notified for documents * adapt specs * Avoid has_many :notifcation_settings Rails magically autosaves the user's preferences when the user gets saved, which somehow also tries to save the notfifications even when unchanged. This breaks some specs such as the avatar upload spec. As we can't update the assocation through rails anyway, just delegate to the user for reading instead. * Restore update method of notification settings * Restore update spec * fix spec syntax * lint scss * linting * Fix content_tag for bell icon * Add feature specs for notification settings * Disable ContentTag cop * use visible filter to get projects for notification The visible filter will reduce the project list down to the set of projects visible to the user provided as a parameter. This includes public projects. * test for actual mail sending * adapt me resource path this.apiV3Service.users.me changed its type in 0d6c0b6bc7620de94e00e72b36d6cbc1ec4c8db4 * Implement changed migration * Linting * Add actor to notification representer * Fix factory creating a duplicate WP journal * Add work packages loading and journal details to notification entry component * IAN basic facets, keep and expanded states. * Fix notification bell spec * Render body separately and add auto updating relative time * Add fixedTime title * Add actor to notification entry * Fix clicking links on work package and project * Tiny styling changes on entry row * Disable count in notification if larger than 99 (wont fit) * Introduce virtual scrolling to entry table * allow delaying & prevent mail sending if ain read Introduces a setting to delay mail sending after a journal aggregation time has expired. That way, users can confirm a notification in app. If they do before the delay expires, no mail is sent out additionally for that user. * consolidate notifications (in&out) into shared admin menu Co-authored-by: ulferts <jens.ulferts@googlemail.com> Co-authored-by: Wieland Lindenthal <w.lindenthal@forkmerge.com>
3 years ago
notifications:
send_notifications: "Send notifications for this action"
[26688] In-app notifications (#9399) * Add bell icon to icon font * Add in app notification in top menu * Add fullscreen modal * Add notification modal and items * Style items * Toggle details of item * Mark all read * Add no results box * wip specification for event api * Add events table, query and index * Send out events from WP notification mailer job There we have the recipients present * Add cleanup job for older events with a setting * Hide bell notification when not logged * Add specs for events API index/show * Fix setting yml key * remove pry in event creation * Fix before hook in events API to after_validation * Fix polymorphic association raising exception for aggregated journals * Fix typo in read_ian * Fix yml entry for mentioned * Add read/unread post actions to event API and add specs * Wire up API to frontend * Fix order on events * Switch to unread in notification * Add event query * rename WPEventService * route wp mail sending over events * rename spec methods * author becomes watcher * correct message call signature * rename events to notifications * renname parameter to reflect notification nature * create author watcher for existing work packages * Merge unreadCount from store * Take a stab at polymorphic representers * Fix link generation in polymorphic resources For journals, no title is being generated however * Fix frontend model for context * Use timer for polling * add notification_setting data layer * Fix show resource spec * Fix duplicate class in notification bell item * Add minimal feature spec for notification * API for notification settings * Persist notifications * adapt work package notification creation to notification settings * extract notified_on_all * consolidate wp#recipients * concentrate wp notification in journal service * simplify methods * Remove unused patch endpoint * Add specs for rendering and parsing notification settings * Contract spec * Update service spec * adapt specs * Angular notifications frontend commit e29dced64699eb5f2443b9307c78343c9a58d1ee Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 17:34:50 2021 +0200 Create Akita store and query for notification settings commit 1a45c26c1a0c147d15393e49d2625aca4851a64d Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 11:09:25 2021 +0200 Remove tabs from notificaition settings page commit 0ea21e90c13a197f8bf2cfba1b60ddcff4e5e827 Author: Oliver Günther <mail@oliverguenther.de> Date: Sun Jun 20 21:55:48 2021 +0200 WIP in app settings * migrate notification data * add project visible filter to project query * Add inline-create and table display grouped by project * Add notifications under admin/users * Remove notifications partial * Rename notififcations store to user preferences store * Add setting for self_notified and hook that up to the backend * Add aria-label to table checkboxes * Restyle table and toolbar * replace remains of mail_notifications attribute * initialize notification settings for new user * adapt my_preferences references * reenable no self notified for documents * adapt specs * Avoid has_many :notifcation_settings Rails magically autosaves the user's preferences when the user gets saved, which somehow also tries to save the notfifications even when unchanged. This breaks some specs such as the avatar upload spec. As we can't update the assocation through rails anyway, just delegate to the user for reading instead. * Restore update method of notification settings * Restore update spec * fix spec syntax * lint scss * linting * Fix content_tag for bell icon * Add feature specs for notification settings * Disable ContentTag cop * use visible filter to get projects for notification The visible filter will reduce the project list down to the set of projects visible to the user provided as a parameter. This includes public projects. * test for actual mail sending * adapt me resource path this.apiV3Service.users.me changed its type in 0d6c0b6bc7620de94e00e72b36d6cbc1ec4c8db4 * Implement changed migration * Linting * Add actor to notification representer * Fix factory creating a duplicate WP journal * Add work packages loading and journal details to notification entry component * IAN basic facets, keep and expanded states. * Fix notification bell spec * Render body separately and add auto updating relative time * Add fixedTime title * Add actor to notification entry * Fix clicking links on work package and project * Tiny styling changes on entry row * Disable count in notification if larger than 99 (wont fit) * Introduce virtual scrolling to entry table * allow delaying & prevent mail sending if ain read Introduces a setting to delay mail sending after a journal aggregation time has expired. That way, users can confirm a notification in app. If they do before the delay expires, no mail is sent out additionally for that user. * consolidate notifications (in&out) into shared admin menu Co-authored-by: ulferts <jens.ulferts@googlemail.com> Co-authored-by: Wieland Lindenthal <w.lindenthal@forkmerge.com>
3 years ago
work_packages:
subject:
created: "The work package was created."
[26688] In-app notifications (#9399) * Add bell icon to icon font * Add in app notification in top menu * Add fullscreen modal * Add notification modal and items * Style items * Toggle details of item * Mark all read * Add no results box * wip specification for event api * Add events table, query and index * Send out events from WP notification mailer job There we have the recipients present * Add cleanup job for older events with a setting * Hide bell notification when not logged * Add specs for events API index/show * Fix setting yml key * remove pry in event creation * Fix before hook in events API to after_validation * Fix polymorphic association raising exception for aggregated journals * Fix typo in read_ian * Fix yml entry for mentioned * Add read/unread post actions to event API and add specs * Wire up API to frontend * Fix order on events * Switch to unread in notification * Add event query * rename WPEventService * route wp mail sending over events * rename spec methods * author becomes watcher * correct message call signature * rename events to notifications * renname parameter to reflect notification nature * create author watcher for existing work packages * Merge unreadCount from store * Take a stab at polymorphic representers * Fix link generation in polymorphic resources For journals, no title is being generated however * Fix frontend model for context * Use timer for polling * add notification_setting data layer * Fix show resource spec * Fix duplicate class in notification bell item * Add minimal feature spec for notification * API for notification settings * Persist notifications * adapt work package notification creation to notification settings * extract notified_on_all * consolidate wp#recipients * concentrate wp notification in journal service * simplify methods * Remove unused patch endpoint * Add specs for rendering and parsing notification settings * Contract spec * Update service spec * adapt specs * Angular notifications frontend commit e29dced64699eb5f2443b9307c78343c9a58d1ee Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 17:34:50 2021 +0200 Create Akita store and query for notification settings commit 1a45c26c1a0c147d15393e49d2625aca4851a64d Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 11:09:25 2021 +0200 Remove tabs from notificaition settings page commit 0ea21e90c13a197f8bf2cfba1b60ddcff4e5e827 Author: Oliver Günther <mail@oliverguenther.de> Date: Sun Jun 20 21:55:48 2021 +0200 WIP in app settings * migrate notification data * add project visible filter to project query * Add inline-create and table display grouped by project * Add notifications under admin/users * Remove notifications partial * Rename notififcations store to user preferences store * Add setting for self_notified and hook that up to the backend * Add aria-label to table checkboxes * Restyle table and toolbar * replace remains of mail_notifications attribute * initialize notification settings for new user * adapt my_preferences references * reenable no self notified for documents * adapt specs * Avoid has_many :notifcation_settings Rails magically autosaves the user's preferences when the user gets saved, which somehow also tries to save the notfifications even when unchanged. This breaks some specs such as the avatar upload spec. As we can't update the assocation through rails anyway, just delegate to the user for reading instead. * Restore update method of notification settings * Restore update spec * fix spec syntax * lint scss * linting * Fix content_tag for bell icon * Add feature specs for notification settings * Disable ContentTag cop * use visible filter to get projects for notification The visible filter will reduce the project list down to the set of projects visible to the user provided as a parameter. This includes public projects. * test for actual mail sending * adapt me resource path this.apiV3Service.users.me changed its type in 0d6c0b6bc7620de94e00e72b36d6cbc1ec4c8db4 * Implement changed migration * Linting * Add actor to notification representer * Fix factory creating a duplicate WP journal * Add work packages loading and journal details to notification entry component * IAN basic facets, keep and expanded states. * Fix notification bell spec * Render body separately and add auto updating relative time * Add fixedTime title * Add actor to notification entry * Fix clicking links on work package and project * Tiny styling changes on entry row * Disable count in notification if larger than 99 (wont fit) * Introduce virtual scrolling to entry table * allow delaying & prevent mail sending if ain read Introduces a setting to delay mail sending after a journal aggregation time has expired. That way, users can confirm a notification in app. If they do before the delay expires, no mail is sent out additionally for that user. * consolidate notifications (in&out) into shared admin menu Co-authored-by: ulferts <jens.ulferts@googlemail.com> Co-authored-by: Wieland Lindenthal <w.lindenthal@forkmerge.com>
3 years ago
assigned: "You have been assigned to %{work_package}"
subscribed: "You subscribed to %{work_package}"
[26688] In-app notifications (#9399) * Add bell icon to icon font * Add in app notification in top menu * Add fullscreen modal * Add notification modal and items * Style items * Toggle details of item * Mark all read * Add no results box * wip specification for event api * Add events table, query and index * Send out events from WP notification mailer job There we have the recipients present * Add cleanup job for older events with a setting * Hide bell notification when not logged * Add specs for events API index/show * Fix setting yml key * remove pry in event creation * Fix before hook in events API to after_validation * Fix polymorphic association raising exception for aggregated journals * Fix typo in read_ian * Fix yml entry for mentioned * Add read/unread post actions to event API and add specs * Wire up API to frontend * Fix order on events * Switch to unread in notification * Add event query * rename WPEventService * route wp mail sending over events * rename spec methods * author becomes watcher * correct message call signature * rename events to notifications * renname parameter to reflect notification nature * create author watcher for existing work packages * Merge unreadCount from store * Take a stab at polymorphic representers * Fix link generation in polymorphic resources For journals, no title is being generated however * Fix frontend model for context * Use timer for polling * add notification_setting data layer * Fix show resource spec * Fix duplicate class in notification bell item * Add minimal feature spec for notification * API for notification settings * Persist notifications * adapt work package notification creation to notification settings * extract notified_on_all * consolidate wp#recipients * concentrate wp notification in journal service * simplify methods * Remove unused patch endpoint * Add specs for rendering and parsing notification settings * Contract spec * Update service spec * adapt specs * Angular notifications frontend commit e29dced64699eb5f2443b9307c78343c9a58d1ee Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 17:34:50 2021 +0200 Create Akita store and query for notification settings commit 1a45c26c1a0c147d15393e49d2625aca4851a64d Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 11:09:25 2021 +0200 Remove tabs from notificaition settings page commit 0ea21e90c13a197f8bf2cfba1b60ddcff4e5e827 Author: Oliver Günther <mail@oliverguenther.de> Date: Sun Jun 20 21:55:48 2021 +0200 WIP in app settings * migrate notification data * add project visible filter to project query * Add inline-create and table display grouped by project * Add notifications under admin/users * Remove notifications partial * Rename notififcations store to user preferences store * Add setting for self_notified and hook that up to the backend * Add aria-label to table checkboxes * Restyle table and toolbar * replace remains of mail_notifications attribute * initialize notification settings for new user * adapt my_preferences references * reenable no self notified for documents * adapt specs * Avoid has_many :notifcation_settings Rails magically autosaves the user's preferences when the user gets saved, which somehow also tries to save the notfifications even when unchanged. This breaks some specs such as the avatar upload spec. As we can't update the assocation through rails anyway, just delegate to the user for reading instead. * Restore update method of notification settings * Restore update spec * fix spec syntax * lint scss * linting * Fix content_tag for bell icon * Add feature specs for notification settings * Disable ContentTag cop * use visible filter to get projects for notification The visible filter will reduce the project list down to the set of projects visible to the user provided as a parameter. This includes public projects. * test for actual mail sending * adapt me resource path this.apiV3Service.users.me changed its type in 0d6c0b6bc7620de94e00e72b36d6cbc1ec4c8db4 * Implement changed migration * Linting * Add actor to notification representer * Fix factory creating a duplicate WP journal * Add work packages loading and journal details to notification entry component * IAN basic facets, keep and expanded states. * Fix notification bell spec * Render body separately and add auto updating relative time * Add fixedTime title * Add actor to notification entry * Fix clicking links on work package and project * Tiny styling changes on entry row * Disable count in notification if larger than 99 (wont fit) * Introduce virtual scrolling to entry table * allow delaying & prevent mail sending if ain read Introduces a setting to delay mail sending after a journal aggregation time has expired. That way, users can confirm a notification in app. If they do before the delay expires, no mail is sent out additionally for that user. * consolidate notifications (in&out) into shared admin menu Co-authored-by: ulferts <jens.ulferts@googlemail.com> Co-authored-by: Wieland Lindenthal <w.lindenthal@forkmerge.com>
3 years ago
mentioned: "You have been mentioned in %{work_package}"
involved: "You either are assigned to or are responsible for %{work_package}"
watched: "You are watching %{work_package}"
[26688] In-app notifications (#9399) * Add bell icon to icon font * Add in app notification in top menu * Add fullscreen modal * Add notification modal and items * Style items * Toggle details of item * Mark all read * Add no results box * wip specification for event api * Add events table, query and index * Send out events from WP notification mailer job There we have the recipients present * Add cleanup job for older events with a setting * Hide bell notification when not logged * Add specs for events API index/show * Fix setting yml key * remove pry in event creation * Fix before hook in events API to after_validation * Fix polymorphic association raising exception for aggregated journals * Fix typo in read_ian * Fix yml entry for mentioned * Add read/unread post actions to event API and add specs * Wire up API to frontend * Fix order on events * Switch to unread in notification * Add event query * rename WPEventService * route wp mail sending over events * rename spec methods * author becomes watcher * correct message call signature * rename events to notifications * renname parameter to reflect notification nature * create author watcher for existing work packages * Merge unreadCount from store * Take a stab at polymorphic representers * Fix link generation in polymorphic resources For journals, no title is being generated however * Fix frontend model for context * Use timer for polling * add notification_setting data layer * Fix show resource spec * Fix duplicate class in notification bell item * Add minimal feature spec for notification * API for notification settings * Persist notifications * adapt work package notification creation to notification settings * extract notified_on_all * consolidate wp#recipients * concentrate wp notification in journal service * simplify methods * Remove unused patch endpoint * Add specs for rendering and parsing notification settings * Contract spec * Update service spec * adapt specs * Angular notifications frontend commit e29dced64699eb5f2443b9307c78343c9a58d1ee Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 17:34:50 2021 +0200 Create Akita store and query for notification settings commit 1a45c26c1a0c147d15393e49d2625aca4851a64d Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 11:09:25 2021 +0200 Remove tabs from notificaition settings page commit 0ea21e90c13a197f8bf2cfba1b60ddcff4e5e827 Author: Oliver Günther <mail@oliverguenther.de> Date: Sun Jun 20 21:55:48 2021 +0200 WIP in app settings * migrate notification data * add project visible filter to project query * Add inline-create and table display grouped by project * Add notifications under admin/users * Remove notifications partial * Rename notififcations store to user preferences store * Add setting for self_notified and hook that up to the backend * Add aria-label to table checkboxes * Restyle table and toolbar * replace remains of mail_notifications attribute * initialize notification settings for new user * adapt my_preferences references * reenable no self notified for documents * adapt specs * Avoid has_many :notifcation_settings Rails magically autosaves the user's preferences when the user gets saved, which somehow also tries to save the notfifications even when unchanged. This breaks some specs such as the avatar upload spec. As we can't update the assocation through rails anyway, just delegate to the user for reading instead. * Restore update method of notification settings * Restore update spec * fix spec syntax * lint scss * linting * Fix content_tag for bell icon * Add feature specs for notification settings * Disable ContentTag cop * use visible filter to get projects for notification The visible filter will reduce the project list down to the set of projects visible to the user provided as a parameter. This includes public projects. * test for actual mail sending * adapt me resource path this.apiV3Service.users.me changed its type in 0d6c0b6bc7620de94e00e72b36d6cbc1ec4c8db4 * Implement changed migration * Linting * Add actor to notification representer * Fix factory creating a duplicate WP journal * Add work packages loading and journal details to notification entry component * IAN basic facets, keep and expanded states. * Fix notification bell spec * Render body separately and add auto updating relative time * Add fixedTime title * Add actor to notification entry * Fix clicking links on work package and project * Tiny styling changes on entry row * Disable count in notification if larger than 99 (wont fit) * Introduce virtual scrolling to entry table * allow delaying & prevent mail sending if ain read Introduces a setting to delay mail sending after a journal aggregation time has expired. That way, users can confirm a notification in app. If they do before the delay expires, no mail is sent out additionally for that user. * consolidate notifications (in&out) into shared admin menu Co-authored-by: ulferts <jens.ulferts@googlemail.com> Co-authored-by: Wieland Lindenthal <w.lindenthal@forkmerge.com>
3 years ago
label_accessibility: "Accessibility"
label_account: "Account"
label_active: "Active"
label_activate_user: 'Activate user'
label_active_in_new_projects: "Active in new projects"
label_activity: "Activity"
label_add_edit_translations: "Add and edit translations"
label_add_another_file: "Add another file"
label_add_columns: "Add selected columns"
label_add_note: "Add a note"
11 years ago
label_add_related_work_packages: "Add related work packages"
label_add_subtask: "Add subtask"
label_added: "added"
label_added_time_by: "Added by %{author} %{age} ago"
label_additional_workflow_transitions_for_assignee: "Additional transitions allowed when the user is the assignee"
label_additional_workflow_transitions_for_author: "Additional transitions allowed when the user is the author"
label_administration: "Administration"
label_advanced_settings: "Advanced settings"
label_age: "Age"
label_ago: "days ago"
label_all: "all"
label_all_time: "all time"
label_all_words: "All words"
label_all_open_wps: "All open"
label_always_visible: "Always displayed"
label_announcement: "Announcement"
label_api_access_key: "API access key"
label_api_access_key_created_on: "API access key created %{value} ago"
label_api_access_key_type: "API"
label_applied_status: "Applied status"
label_archive_project: "Archive project"
label_ascending: "Ascending"
label_assigned_to_me_work_packages: "Work packages assigned to me"
label_associated_revisions: "Associated revisions"
label_attachment_delete: "Delete file"
label_attachment_new: "New file"
label_attachment_plural: "Files"
label_attribute: "Attribute"
label_attribute_plural: "Attributes"
label_auth_source: "Authentication mode"
label_auth_source_new: "New authentication mode"
label_auth_source_plural: "Authentication modes"
label_authentication: "Authentication"
label_available_project_work_package_categories: 'Available work package categories'
label_available_project_work_package_types: 'Available work package types'
label_available_project_forums: 'Available forums'
label_available_project_versions: 'Available versions'
label_available_project_repositories: 'Available repositories'
label_api_documentation: "API documentation"
label_backup: "Backup"
label_between: "between"
label_blocked_by: "blocked by"
label_blocks: "blocks"
label_blog: "Blog"
label_forums_locked: "Locked"
label_forum_new: "New forum"
label_forum_plural: "Forums"
label_forum_sticky: "Sticky"
label_boolean: "Boolean"
label_branch: "Branch"
label_browse: "Browse"
label_bulk_edit_selected_work_packages: "Bulk edit selected work packages"
label_bundled: '(Bundled)'
label_calendar: "Calendar"
label_calendar_show: "Show Calendar"
label_category: "Category"
7 years ago
label_consent_settings: "User Consent"
label_wiki_menu_item: Wiki menu item
label_select_main_menu_item: Select new main menu item
label_select_project: "Select a project"
label_required_disk_storage: "Required disk storage"
label_send_invitation: Send invitation
label_change_plural: "Changes"
label_change_properties: "Change properties"
label_change_status: "Change status"
label_change_status_of_user: "Change status of #{username}"
label_change_view_all: "View all changes"
label_changes_details: "Details of all changes"
label_changeset: "Changeset"
label_changeset_id: "Changeset ID"
label_changeset_plural: "Changesets"
label_checked: "checked"
label_check_uncheck_all_in_column: "Check/Uncheck all in column"
label_check_uncheck_all_in_row: "Check/Uncheck all in row"
label_child_element: "Child element"
label_chronological_order: "Oldest first"
label_close_versions: "Close completed versions"
label_closed_work_packages: "closed"
label_collapse: "Collapse"
label_collapsed_click_to_show: "Collapsed. Click to show"
label_configuration: configuration
label_comment_add: "Add a comment"
label_comment_added: "Comment added"
label_comment_delete: "Delete comments"
label_comment_plural: "Comments"
label_commits_per_author: "Commits per author"
label_commits_per_month: "Commits per month"
label_confirmation: "Confirmation"
label_contains: "contains"
label_content: "Content"
label_copied: "copied"
label_copy_to_clipboard: "Copy to clipboard"
label_copy_same_as_target: "Same as target"
label_copy_source: "Source"
label_copy_target: "Target"
label_copy_workflow_from: "Copy workflow from"
label_copy_project: "Copy project"
label_core_version: "Core version"
label_current_status: "Current status"
label_current_version: "Current version"
label_custom_field_add_no_type: "Add this field to a work package type"
label_custom_field_new: "New custom field"
label_custom_field_plural: "Custom fields"
label_custom_field_default_type: "Empty type"
label_custom_style: "Design"
label_database_version: "PostgreSQL version"
label_date: "Date"
label_date_and_time: "Date and time"
label_date_from: "From"
label_date_from_to: "From %{start} to %{end}"
label_date_to: "To"
label_day_plural: "days"
label_default: "Default"
label_delete_user: "Delete user"
label_delete_project: "Delete project"
label_deleted: "deleted"
label_deleted_custom_field: "(deleted custom field)"
label_deleted_custom_option: "(deleted option)"
label_missing_or_hidden_custom_option: "(missing value or lacking permissions to access)"
label_descending: "Descending"
label_details: "Details"
label_development_roadmap: "Development roadmap"
label_diff: "diff"
label_diff_inline: "inline"
label_diff_side_by_side: "side by side"
label_disabled: "disabled"
label_display: "Display"
label_display_per_page: "Per page: %{value}"
label_display_used_statuses_only: "Only display statuses that are used by this type"
label_download: "%{count} Download"
label_download_plural: "%{count} Downloads"
label_downloads_abbr: "D/L"
label_duplicated_by: "duplicated by"
label_duplicate: "duplicate"
label_duplicates: "duplicates"
label_edit: "Edit"
label_edit_x: "Edit: %{x}"
label_enable_multi_select: "Toggle multiselect"
label_enabled_project_custom_fields: 'Enabled custom fields'
label_enabled_project_modules: 'Enabled modules'
label_enabled_project_activities: 'Enabled time tracking activities'
label_end_to_end: "end to end"
label_end_to_start: "end to start"
label_enumeration_new: "New enumeration value"
label_enumeration_value: "Enumeration value"
label_enumerations: "Enumerations"
label_enterprise: "Enterprise"
6 years ago
label_enterprise_active_users: "%{current}/%{limit} booked active users"
label_enterprise_edition: "Enterprise Edition"
label_environment: "Environment"
label_estimates_and_time: "Estimates and time"
label_equals: "is"
label_everywhere: "everywhere"
label_example: "Example"
label_import: "Import"
label_export_to: "Also available in:"
label_expanded_click_to_collapse: "Expanded. Click to collapse"
label_f_hour: "%{value} hour"
label_f_hour_plural: "%{value} hours"
label_feed_plural: "Feeds"
label_feeds_access_key: "RSS access key"
label_feeds_access_key_created_on: "RSS access key created %{value} ago"
label_feeds_access_key_type: "RSS"
label_file_plural: "Files"
label_filter_add: "Add filter"
label_filter_plural: "Filters"
label_filters_toggle: "Show/hide filters"
label_float: "Float"
label_folder: "Folder"
label_follows: "follows"
label_force_user_language_to_default: "Set language of users having a non allowed language to default"
label_form_configuration: "Form configuration"
label_gantt: "Gantt"
label_gantt_chart: "Gantt chart"
label_general: "General"
label_generate_key: "Generate a key"
label_git_path: "Path to .git directory"
label_greater_or_equal: ">="
label_group_by: "Group by"
label_group_new: "New group"
label_group: "Group"
label_group_named: "Group %{name}"
label_group_plural: "Groups"
label_help: "Help"
label_here: here
label_hide: "Hide"
label_history: "History"
label_hierarchy_leaf: "Hierarchy leaf"
label_home: "Home"
label_subject_or_id: "Subject or ID"
label_impressum: "Legal notice"
label_in: "in"
label_in_less_than: "in less than"
label_in_more_than: "in more than"
label_inactive: "Inactive"
label_incoming_emails: "Incoming emails"
label_includes: 'includes'
label_index_by_date: "Index by date"
label_index_by_title: "Index by title"
label_information: "Information"
label_information_plural: "Information"
label_integer: "Integer"
label_internal: "Internal"
label_introduction_video: "Introduction video"
label_invite_user: "Invite user"
label_show_hide: "Show/hide"
label_show_all_registered_users: "Show all registered users"
label_journal: "Journal"
label_journal_diff: "Description Comparison"
label_language: "Language"
label_jump_to_a_project: "Jump to a project..."
label_keyword_plural: 'Keywords'
label_language_based: "Based on user's language"
label_last_activity: "Last activity"
label_last_change_on: "Last change on"
label_last_changes: "last %{count} changes"
label_last_login: "Last login"
label_last_month: "last month"
label_last_n_days: "last %{count} days"
label_last_week: "last week"
label_latest_revision: "Latest revision"
label_latest_revision_plural: "Latest revisions"
label_ldap_authentication: "LDAP authentication"
label_less_or_equal: "<="
label_less_than_ago: "less than days ago"
label_list: "List"
label_loading: "Loading..."
label_lock_user: 'Lock user'
label_logged_as: "Logged in as"
label_login: "Sign in"
label_custom_logo: "Custom logo"
label_custom_favicon: "Custom favicon"
label_custom_touch_icon: "Custom touch icon"
label_logout: "Sign out"
label_main_menu: "Side Menu"
label_manage_groups: "Manage groups"
label_managed_repositories_vendor: "Managed %{vendor} repositories"
label_max_size: "Maximum size"
label_me: "me"
label_member_new: "New member"
label_member_all_admin: "(All roles due to admin status)"
label_member_plural: "Members"
lable_membership_added: 'Member added'
lable_membership_updated: 'Member updated'
label_menu_item_name: "Name of menu item"
label_message: "Message"
label_message_last: "Last message"
label_message_new: "New message"
label_message_plural: "Messages"
label_message_posted: "Message added"
label_min_max_length: "Min - Max length"
label_minute_plural: "minutes"
label_missing_api_access_key: "Missing API access key"
label_missing_feeds_access_key: "Missing RSS access key"
label_modification: "%{count} change"
label_modified: "modified"
label_module_plural: "Modules"
label_modules: "Modules"
label_months_from: "months from"
label_more: "More"
label_more_than_ago: "more than days ago"
label_move_work_package: "Move work package"
label_my_account: "My account"
label_my_account_data: "My account data"
label_my_projects: "My projects"
label_my_queries: "My custom queries"
Placeholder user services and administration (#8944) * Adding placeholder user contracts * Adding create, update, and delete services for placeholder users * WIP: Adding Placeholder User contract specs [ci skip] * Extract contract validation into common helper * Add common validation in BaseContract + common example for admin checks * Introduce common ModelContract shared context for validations * WIP: PlaceholderUser controller, i18n, and routes [ci skip] * Placeholder users index page and query - moved all group related scopes from User to Principal to make them also available in PlaceholderUser. * end * Create PlaceholderUser * Feature spec for editing a placeholder user * Manage PlaceholderUser memberships The managment of memberships is pretty similar for User and PlaceholderUser. This commit extacts the similarities and uses them for both. * General partial and show view for PlaceholderUser * Delete obosolete partial * Allow RequireAdminGuard to be used as a module function * Fix I18n for confirmation text * Smaller code improvements * Fix: Syntax for accessing status enums was wrong. * Use UpdateService for updating a placeholder user * Add spec for PlaceholderUsersController * First code improvements after code review. - more improvements to come. * Further code improvements after review ... still more to come * Correct namespace of delete service * Fix: Make placeholder user contract validate * Remove :type attribute from base contract of User and PlaceholerUser ...and add it to the CreateContracts. Also add type validations. Further extract shared examples for placeholder user attribute validation * Refactor: Extract membership hook calls to helper * Fix redirect paths for membership controllers * Specs already present in shared exampels. * Fix duplicates routes for users and placeholder users * Fix user path * Add attribute name and lastname We don't need a writeable check as both are equally writable * Replace more references to tab_edit_user_path * Skip specs for PlaceholderUsers::DeletionService We will tackle that service in a separate PR. * Fix module usage of RequireAdminGuard * Fix group filter for placeholder users * Fix invalid reference to expect_valid * Fix: Fix tabbed edit path for placeholder users * Fix status filtering on users * Linting * Improve generalisation of individual principal filter cell - Check for presence of groups and statuses in order to toggle visibility of their UI element. - Remove groups from placeholder user controller and cell initialization and options * Fix selector on groups assign * Remove using_shared_fixtures Co-authored-by: Oliver Günther <mail@oliverguenther.de>
4 years ago
label_name: "Name"
label_never: "Never"
label_new: "New"
label_new_features: "New features"
label_new_statuses_allowed: "New statuses allowed"
label_news_singular: "News"
label_news_added: "News added"
label_news_comment_added: "Comment added to a news"
label_news_latest: "Latest news"
label_news_new: "Add news"
label_news_edit: "Edit news"
label_news_plural: "News"
label_news_view_all: "View all news"
label_next: "Next"
label_next_week: "Next week"
label_no_change_option: "(No change)"
label_no_data: "No data to display"
label_no_parent_page: "No parent page"
9 years ago
label_nothing_display: "Nothing to display"
label_nobody: "nobody"
label_not_found: 'not found'
label_none: "none"
label_none_parentheses: "(none)"
label_not_contains: "doesn't contain"
label_not_equals: "is not"
label_on: "on"
label_open_menu: "Open menu"
label_open_work_packages: "open"
label_open_work_packages_plural: "open"
label_openproject_website: "OpenProject website"
label_optional_description: "Description"
label_options: "Options"
label_other: "Other"
label_overall_activity: "Overall activity"
label_overview: "Overview"
label_page_title: "Page title"
label_part_of: "part of"
label_password_lost: "Forgot your password?"
label_password_rule_lowercase: "Lowercase"
label_password_rule_numeric: "Numeric Characters"
label_password_rule_special: "Special Characters"
label_password_rule_uppercase: "Uppercase"
label_path_encoding: "Path encoding"
label_pdf_with_descriptions: "PDF with Descriptions"
label_per_page: "Per page"
label_people: "People"
label_permissions: "Permissions"
label_permissions_report: "Permissions report"
label_personalize_page: "Personalize this page"
Placeholder user services and administration (#8944) * Adding placeholder user contracts * Adding create, update, and delete services for placeholder users * WIP: Adding Placeholder User contract specs [ci skip] * Extract contract validation into common helper * Add common validation in BaseContract + common example for admin checks * Introduce common ModelContract shared context for validations * WIP: PlaceholderUser controller, i18n, and routes [ci skip] * Placeholder users index page and query - moved all group related scopes from User to Principal to make them also available in PlaceholderUser. * end * Create PlaceholderUser * Feature spec for editing a placeholder user * Manage PlaceholderUser memberships The managment of memberships is pretty similar for User and PlaceholderUser. This commit extacts the similarities and uses them for both. * General partial and show view for PlaceholderUser * Delete obosolete partial * Allow RequireAdminGuard to be used as a module function * Fix I18n for confirmation text * Smaller code improvements * Fix: Syntax for accessing status enums was wrong. * Use UpdateService for updating a placeholder user * Add spec for PlaceholderUsersController * First code improvements after code review. - more improvements to come. * Further code improvements after review ... still more to come * Correct namespace of delete service * Fix: Make placeholder user contract validate * Remove :type attribute from base contract of User and PlaceholerUser ...and add it to the CreateContracts. Also add type validations. Further extract shared examples for placeholder user attribute validation * Refactor: Extract membership hook calls to helper * Fix redirect paths for membership controllers * Specs already present in shared exampels. * Fix duplicates routes for users and placeholder users * Fix user path * Add attribute name and lastname We don't need a writeable check as both are equally writable * Replace more references to tab_edit_user_path * Skip specs for PlaceholderUsers::DeletionService We will tackle that service in a separate PR. * Fix module usage of RequireAdminGuard * Fix group filter for placeholder users * Fix invalid reference to expect_valid * Fix: Fix tabbed edit path for placeholder users * Fix status filtering on users * Linting * Improve generalisation of individual principal filter cell - Check for presence of groups and statuses in order to toggle visibility of their UI element. - Remove groups from placeholder user controller and cell initialization and options * Fix selector on groups assign * Remove using_shared_fixtures Co-authored-by: Oliver Günther <mail@oliverguenther.de>
4 years ago
label_placeholder_user: "Placeholder user"
label_placeholder_user_new: "New placeholder user"
label_placeholder_user_plural: "Placeholder users"
label_planning: "Planning"
label_please_login: "Please log in"
label_plugins: "Plugins"
label_modules_and_plugins: "Modules and Plugins"
label_precedes: "precedes"
label_preferences: "Preferences"
label_preview: "Preview"
label_previous: "Previous"
label_previous_week: "Previous week"
label_principal_invite_via_email: " or invite new users via email"
label_principal_search: "Add existing users or groups"
label_privacy_policy: "Data privacy and security policy"
label_product_version: "Product version"
label_professional_support: "Professional support"
label_profile: "Profile"
label_project_all: "All Projects"
label_project_count: "Total number of projects"
label_project_copy_notifications: "Send email notifications during the project copy"
label_project_latest: "Latest projects"
label_project_default_type: "Allow empty type"
label_project_hierarchy: "Project hierarchy"
label_project_new: "New project"
label_project_plural: "Projects"
label_project_settings: "Project settings"
label_projects_storage_information: "%{count} projects using %{storage} disk storage"
label_project_view_all: "View all projects"
label_project_show_details: "Show project details"
label_project_hide_details: "Hide project details"
label_public_projects: "Public projects"
label_query_new: "New query"
label_query_plural: "Custom queries"
label_query_menu_item: "Query menu item"
label_read: "Read..."
label_register: "Create a new account"
label_register_with_developer: "Register as developer"
label_registered_on: "Registered on"
label_registration_activation_by_email: "account activation by email"
label_registration_automatic_activation: "automatic account activation"
label_registration_manual_activation: "manual account activation"
label_related_work_packages: "Related work packages"
label_relates: "related to"
label_relates_to: "related to"
label_relation_delete: "Delete relation"
label_relation_new: "New relation"
label_release_notes: "Release notes"
label_remove_columns: "Remove selected columns"
label_renamed: "renamed"
label_reply_plural: "Replies"
label_report: "Report"
label_report_bug: "Report a bug"
label_report_plural: "Reports"
label_reported_work_packages: "Reported work packages"
label_reporting: "Reporting"
label_reporting_plural: "Reportings"
label_repository: "Repository"
label_repository_root: "Repository root"
label_repository_plural: "Repositories"
label_required: 'required'
label_requires: 'requires'
label_result_plural: "Results"
label_reverse_chronological_order: "Newest first"
label_revision: "Revision"
label_revision_id: "Revision %{value}"
label_revision_plural: "Revisions"
label_roadmap: "Roadmap"
label_roadmap_edit: "Edit roadmap %{name}"
label_roadmap_due_in: "Due in %{value}"
label_roadmap_no_work_packages: "No work packages for this version"
label_roadmap_overdue: "%{value} late"
label_role_and_permissions: "Roles and permissions"
label_role_new: "New role"
label_role_plural: "Roles"
label_role_search: "Assign role to new members"
label_scm: "SCM"
label_search: "Search"
label_send_information: "Send account information to the user"
label_send_test_email: "Send a test email"
label_setting_plural: "Settings"
label_system_settings: "System settings"
label_show_completed_versions: "Show completed versions"
label_sort: "Sort"
label_sort_by: "Sort by %{value}"
label_sorted_by: "sorted by %{value}"
label_sort_higher: "Move up"
label_sort_highest: "Move to top"
label_sort_lower: "Move down"
label_sort_lowest: "Move to bottom"
label_spent_time: "Spent time"
label_start_to_end: "start to end"
label_start_to_start: "start to start"
label_statistics: "Statistics"
label_status: "Status"
label_stay_logged_in: "Stay logged in"
label_storage_free_space: "Remaining disk space"
label_storage_used_space: "Used disk space"
label_storage_group: "Storage filesystem %{identifier}"
label_storage_for: "Encompasses storage for"
label_string: "Text"
label_subproject: "Subproject"
label_subproject_new: "New subproject"
label_subproject_plural: "Subprojects"
label_subtask_plural: "Subtasks"
label_summary: "Summary"
label_system: "System"
label_system_storage: "Storage information"
label_table_of_contents: "Table of contents"
label_tag: "Tag"
label_text: "Long text"
label_this_month: "this month"
label_this_week: "this week"
label_this_year: "this year"
label_time_entry_plural: "Spent time"
label_projects_menu: "Projects"
label_today: "today"
label_top_menu: "Top Menu"
label_topic_plural: "Topics"
label_total: "Total"
label_type_new: "New type"
label_type_plural: "Types"
label_ui: "User Interface"
label_update_work_package_done_ratios: "Update work package done ratios"
label_updated_time: "Updated %{value} ago"
label_updated_time_at: "%{author} %{age}"
label_updated_time_by: "Updated by %{author} %{age} ago"
label_upgrade_guides: 'Upgrade guides'
label_used_by: "Used by"
label_used_by_types: "Used by types"
label_used_in_projects: "Used in projects"
label_user: "User"
label_user_and_permission: "Users & Permissions"
label_user_named: "User %{name}"
label_user_activity: "%{value}'s activity"
label_user_anonymous: "Anonymous"
label_user_mail_option_all: "For any event on all my projects"
label_user_mail_option_none: "No events"
label_user_mail_option_only_assigned: "Only for things I am assigned to"
label_user_mail_option_only_my_events: "Only for things I watch or I'm involved in"
label_user_mail_option_only_owner: "Only for things I am the owner of"
label_user_mail_option_selected: "For any event on the selected projects only"
label_user_new: "New user"
label_user_plural: "Users"
label_user_search: "Search for user"
label_user_settings: "User settings"
label_version_new: "New version"
label_version_plural: "Versions"
label_version_sharing_descendants: "With subprojects"
label_version_sharing_hierarchy: "With project hierarchy"
label_version_sharing_none: "Not shared"
label_version_sharing_system: "With all projects"
label_version_sharing_tree: "With project tree"
label_videos: "Videos"
label_view_all_revisions: "View all revisions"
label_view_diff: "View differences"
label_view_revisions: "View revisions"
label_watched_work_packages: "Watched work packages"
label_what_is_this: "What is this?"
label_week: "Week"
label_wiki_content_added: "Wiki page added"
label_wiki_content_updated: "Wiki page updated"
label_wiki_toc: "Table of Contents"
label_wiki_toc_empty: "Table of Contents is empty as no headings are present."
label_wiki_dont_show_menu_item: "Do not show this wikipage in project navigation"
label_wiki_edit: "Wiki edit"
label_wiki_edit_plural: "Wiki edits"
label_wiki_page_attachments: "Wiki page attachments"
label_wiki_page_id: "Wiki page ID"
label_wiki_navigation: "Wiki navigation"
label_wiki_page: "Wiki page"
label_wiki_page_plural: "Wiki pages"
label_wiki_show_index_page_link: "Show submenu item 'Table of Contents'"
label_wiki_show_menu_item: "Show as menu item in project navigation"
label_wiki_show_new_page_link: "Show submenu item 'Create new child page'"
label_wiki_show_submenu_item: "Show as submenu item of "
label_wiki_start: "Start page"
label_work_package: "Work package"
label_work_package_attachments: "Work package attachments"
label_work_package_category_new: "New category"
label_work_package_category_plural: "Work package categories"
label_work_package_hierarchy: "Work package hierarchy"
label_work_package_new: "New work package"
label_work_package_edit: "Edit work package %{name}"
label_work_package_plural: "Work packages"
label_work_package_status: "Work package status"
label_work_package_status_new: "New status"
label_work_package_status_plural: "Work package statuses"
label_work_package_types: "Work package types"
label_work_package_tracking: "Work package tracking"
label_work_package_view_all: "View all work packages"
label_workflow: "Workflow"
label_workflow_plural: "Workflows"
label_workflow_summary: "Summary"
11 years ago
label_x_closed_work_packages_abbr:
one: "1 closed"
other: "%{count} closed"
zero: "0 closed"
label_x_comments:
one: "1 comment"
other: "%{count} comments"
zero: "no comments"
11 years ago
label_x_open_work_packages_abbr:
one: "1 open"
other: "%{count} open"
zero: "0 open"
label_x_projects:
one: "1 project"
other: "%{count} projects"
zero: "no projects"
label_yesterday: "yesterday"
label_role_type: "Type"
label_member_role: "Project Role"
label_global_role: "Global Role"
label_not_changeable: "(not changeable)"
label_global: "Global"
auth_source:
using_abstract_auth_source: "Can't use an abstract authentication source."
ldap_error: "LDAP-Error: %{error_message}"
ldap_auth_failed: "Could not authenticate at the LDAP-Server."
macro_execution_error: "Error executing the macro %{macro_name}"
macro_unavailable: "Macro %{macro_name} cannot be displayed."
macros:
placeholder: '[Placeholder] Macro %{macro_name}'
errors:
missing_or_invalid_parameter: 'Missing or invalid macro parameter.'
legacy_warning:
timeline: 'This legacy timeline macro has been removed and is no longer available. You can replace the functionality with an embedded table macro.'
include_wiki_page:
removed: 'The macro does no longer exist.'
wiki_child_pages:
errors:
page_not_found: "Cannot find the wiki page '%{name}'."
create_work_package_link:
errors:
no_project_context: 'Calling create_work_package_link macro from outside project context.'
invalid_type: "No type found with name '%{type}' in project '%{project}'."
link_name: 'New work package'
link_name_type: 'New %{type_name}'
mail:
actions: 'Actions'
digests:
center: 'Notification center'
salutation: 'Hey %{user}!'
settings: 'Change email settings'
time_frame: "At %{time} on %{weekday}, %{date}, you have %{number_unread} unread notifications in %{number_work_packages} work packages"
work_packages:
created: 'Created'
created_at: 'by %{user} %{timestamp} ago'
login_to_see_all: 'Log in to see all notifications.'
more_to_see_singular: 'There is 1 more work package with notifications.'
more_to_see_plural: 'There are %{number} more work packages with notifications.'
reason:
watched: 'watched'
involved: 'assignee or responsible'
mentioned: 'mentioned'
subscribed: 'all'
prefix: 'Received because of the notification setting: %{reason}'
see_all: 'See all'
subject: 'Daily project summary for %{date} - %{number} updates'
updated: 'Updated'
updated_at: '%{timestamp} ago by %{user}'
mail_body_account_activation_request: "A new user (%{value}) has registered. The account is pending your approval:"
mail_body_account_information: "Your account information"
mail_body_account_information_external: "You can use your %{value} account to log in."
mail_body_backup_ready: "Your requested backup is ready. You can download it here:"
mail_body_backup_token_reset_admin_info: The backup token for user '%{user}' has been reset.
mail_body_backup_token_reset_user_info: Your backup token has been reset.
mail_body_backup_token_info: The previous token is no longer valid.
mail_body_backup_waiting_period: The new token will be enabled in %{hours} hours.
mail_body_backup_token_warning: If this wasn't you, login to OpenProject immediately and reset it again.
mail_body_lost_password: "To change your password, click on the following link:"
mail_body_register: "Welcome to OpenProject. Please activate your account by clicking on this link:"
mail_body_register_header_title: "Project member invitation email"
mail_body_register_user: "Dear %{name}, "
mail_body_register_links_html: |
Please feel free to browse our youtube channel (%{youtube_link}) where we provide a webinar (%{webinar_link})
and “Get started” videos (%{get_started_link}) to make your first steps in OpenProject as easy as possible.
<br />
If you have any further questions, consult our documentation (%{documentation_link}) or contact us (%{contact_us_link}).
mail_body_register_closing: "Your OpenProject team"
mail_body_register_ending: "Stay connected! Kind regards,"
mail_body_reminder: "%{count} work package(s) that are assigned to you are due in the next %{days} days:"
mail_body_group_reminder: "%{count} work package(s) that are assigned to group \"%{group}\" are due in the next %{days} days:"
mail_body_wiki_content_added: "The '%{id}' wiki page has been added by %{author}."
mail_body_wiki_content_updated: "The '%{id}' wiki page has been updated by %{author}."
mail_subject_account_activation_request: "%{value} account activation request"
mail_subject_backup_ready: "Your backup is ready"
mail_subject_backup_token_reset: "Backup token reset"
mail_subject_lost_password: "Your %{value} password"
mail_subject_register: "Your %{value} account activation"
mail_subject_reminder: "%{count} work package(s) due in the next %{days} days"
mail_subject_group_reminder: "For group \"%{group}\" %{count} work package(s) due in the next %{days} days"
mail_subject_wiki_content_added: "'%{id}' wiki page has been added"
mail_subject_wiki_content_updated: "'%{id}' wiki page has been updated"
mail_member_added_project:
subject: "%{project} - You have been added as a member"
body:
added_by:
without_message: "%{user} added you as a member to the project '%{project}'."
with_message: "%{user} added you as a member to the project '%{project}' writing:"
roles: "You have the following roles:"
mail_member_updated_project:
subject: "%{project} - Your roles have been updated"
body:
updated_by:
without_message: "%{user} updated the roles you have in the project '%{project}'."
with_message: "%{user} updated the roles you have in the project '%{project}' writing:"
roles: "You now have the following roles:"
mail_member_updated_global:
subject: "Your global permissions have been updated"
body:
updated_by:
without_message: "%{user} updated the roles you have globally."
with_message: "%{user} updated the roles you have globally writing:"
roles: "You now have the following roles:"
mail_user_activation_limit_reached:
subject: User activation limit reached
message: |
A new user (%{email}) tried to create an account on an OpenProject environment that you manage (%{host}).
The user cannot activate their account since the user limit has been reached.
steps:
label: "To allow the user to sign in you can either: "
a: "Upgrade your payment plan ([here](upgrade_url))" # here turned into a link
b: "Lock or delete an existing user ([here](users_url))" # here turned into a link
more_actions: "More functions"
noscript_description: "You need to activate JavaScript in order to use OpenProject!"
noscript_heading: "JavaScript disabled"
noscript_learn_more: "Learn more"
notice_accessibility_mode: The accessibility mode can be enabled in your [account settings](url).
notice_account_activated: "Your account has been activated. You can now log in."
notice_account_already_activated: The account has already been activated.
notice_account_invalid_token: Invalid activation token
notice_account_invalid_credentials: "Invalid user or password"
notice_account_invalid_credentials_or_blocked: "Invalid user or password or the account is blocked due to multiple failed login attempts. If so, it will be unblocked automatically in a short time."
notice_account_lost_email_sent: "An email with instructions to choose a new password has been sent to you."
notice_account_new_password_forced: "A new password is required."
notice_account_password_expired: "Your password expired after %{days} days. Please set a new one."
notice_account_password_updated: "Password was successfully updated."
notice_account_pending: "Your account was created and is now pending administrator approval."
notice_account_register_done: "Account was successfully created. To activate your account, click on the link that was emailed to you."
notice_account_unknown_email: "Unknown user."
notice_account_update_failed: "Account setting could not be saved. Please have a look at your account page."
notice_account_updated: "Account was successfully updated."
notice_account_other_session_expired: "All other sessions tied to your account have been invalidated."
notice_account_wrong_password: "Wrong password"
notice_account_registered_and_logged_in: "Welcome, your account has been activated. You are logged in now."
notice_activation_failed: The account could not be activated.
notice_auth_stage_verification_error: "Could not verify stage '%{stage}'."
notice_auth_stage_wrong_stage: "Expected to finish authentication stage '%{expected}', but '%{actual}' returned."
notice_auth_stage_error: "Authentication stage '%{stage}' failed."
notice_can_t_change_password: "This account uses an external authentication source. Impossible to change the password."
notice_custom_options_deleted: "Option '%{option_value}' and its %{num_deleted} occurrences were deleted."
notice_email_error: "An error occurred while sending mail (%{value})"
notice_email_sent: "An email was sent to %{value}"
11 years ago
notice_failed_to_save_work_packages: "Failed to save %{count} work package(s) on %{total} selected: %{ids}."
notice_failed_to_save_members: "Failed to save member(s): %{errors}."
notice_deletion_scheduled: "The deletion has been scheduled and is performed asynchronously."
notice_file_not_found: "The page you were trying to access doesn't exist or has been removed."
notice_forced_logout: "You have been automatically logged out after %{ttl_time} minutes of inactivity."
notice_internal_server_error: "An error occurred on the page you were trying to access. If you continue to experience problems please contact your %{app_title} administrator for assistance."
notice_work_package_done_ratios_updated: "Work package done ratios updated."
notice_locking_conflict: "Information has been updated by at least one other user in the meantime."
notice_locking_conflict_additional_information: "The update(s) came from %{users}."
notice_locking_conflict_reload_page: "Please reload the page, review the changes and reapply your updates."
notice_member_added: Added %{name} to the project.
notice_members_added: Added %{number} users to the project.
notice_member_removed: "Removed %{user} from project."
notice_member_deleted: "%{user} has been removed from the project and deleted."
notice_no_principals_found: "No results found."
notice_bad_request: "Bad Request."
notice_not_authorized: "You are not authorized to access this page."
notice_not_authorized_archived_project: "The project you're trying to access has been archived."
notice_password_confirmation_failed: "Your password is not correct. Cannot continue."
notice_principals_found_multiple: "There are %{number} results found. \n Tab to focus the first result."
notice_principals_found_single: "There is one result. \n Tab to focus it."
notice_project_not_deleted: "The project wasn't deleted."
notice_successful_connection: "Successful connection."
notice_successful_create: "Successful creation."
notice_successful_delete: "Successful deletion."
notice_successful_update: "Successful update."
notice_to_many_principals_to_display: "There are too many results.\nNarrow down the search by typing in the name of the new member (or group)."
notice_user_missing_authentication_method: User has yet to choose a password or another way to sign in.
notice_user_invitation_resent: An invitation has been sent to %{email}.
present_access_key_value: "Your %{key_name} is: %{value}"
notice_automatic_set_of_standard_type: "Set standard type automatically."
notice_logged_out: "You have been logged out."
notice_wont_delete_auth_source: The authentication mode cannot be deleted as long as there are still users using it.
notice_project_cannot_update_custom_fields: "You cannot update the project's available custom fields. The project is invalid: %{errors}"
notice_attachment_migration_wiki_page: >
This page was generated automatically during the update of OpenProject.
It contains all attachments previously associated with the %{container_type} "%{container_name}".
# Default format for numbers
number:
format:
delimiter: ""
precision: 3
separator: "."
human:
format:
delimiter: ""
precision: 1
storage_units:
format: "%n %u"
units:
byte:
one: "Byte"
other: "Bytes"
gb: "GB"
kb: "kB"
mb: "MB"
tb: "TB"
onboarding:
heading_getting_started: "Get an overview"
text_getting_started_description: "Get a quick overview of project management and team collaboration with OpenProject."
text_show_again: "You can restart this video from the help menu"
welcome: "Welcome to OpenProject"
select_language: "Please select your language"
permission_add_work_package_notes: "Add notes"
permission_add_work_packages: "Add work packages"
permission_add_messages: "Post messages"
permission_add_project: "Create project"
permission_manage_user: "Create and edit users"
permission_manage_placeholder_user: "Create, edit, and delete placeholder users"
permission_add_subprojects: "Create subprojects"
permission_add_work_package_watchers: "Add watchers"
permission_assign_versions: "Assign versions"
permission_browse_repository: "Read-only access to repository (browse and checkout)"
permission_change_wiki_parent_page: "Change parent wiki page"
permission_comment_news: "Comment news"
permission_commit_access: "Read/write access to repository (commit)"
permission_copy_projects: "Copy projects"
permission_delete_work_package_watchers: "Delete watchers"
permission_delete_work_packages: "Delete work packages"
permission_delete_messages: "Delete messages"
permission_delete_own_messages: "Delete own messages"
permission_delete_reportings: "Delete reportings"
permission_delete_timelines: "Delete timelines"
permission_delete_wiki_pages: "Delete wiki pages"
permission_delete_wiki_pages_attachments: "Delete attachments"
permission_edit_work_package_notes: "Edit notes"
permission_edit_work_packages: "Edit work packages"
permission_edit_messages: "Edit messages"
permission_edit_own_work_package_notes: "Edit own notes"
permission_edit_own_messages: "Edit own messages"
permission_edit_own_time_entries: "Edit own time logs"
permission_edit_project: "Edit project"
permission_edit_reportings: "Edit reportings"
permission_edit_time_entries: "Edit time logs"
permission_edit_timelines: "Edit timelines"
permission_edit_wiki_pages: "Edit wiki pages"
permission_export_work_packages: "Export work packages"
permission_export_wiki_pages: "Export wiki pages"
permission_list_attachments: "List attachments"
permission_log_time: "Log spent time"
permission_manage_forums: "Manage forums"
permission_manage_categories: "Manage work package categories"
permission_manage_work_package_relations: "Manage work package relations"
permission_manage_members: "Manage members"
permission_manage_news: "Manage news"
permission_manage_project_activities: "Manage project activities"
permission_manage_public_queries: "Manage public views"
permission_manage_repository: "Manage repository"
permission_manage_subtasks: "Manage work package hierarchies"
permission_manage_versions: "Manage versions"
permission_manage_wiki: "Manage wiki"
permission_manage_wiki_menu: "Manage wiki menu"
permission_move_work_packages: "Move work packages"
permission_protect_wiki_pages: "Protect wiki pages"
permission_rename_wiki_pages: "Rename wiki pages"
permission_save_queries: "Save views"
permission_select_project_modules: "Select project modules"
permission_manage_types: "Select types"
permission_view_calendar: "View calendar"
permission_view_changesets: "View repository revisions in OpenProject"
permission_view_commit_author_statistics: "View commit author statistics"
permission_view_work_package_watchers: "View watchers list"
permission_view_work_packages: "View work packages"
permission_view_messages: "View messages"
permission_view_members: "View members"
permission_view_reportings: "View reportings"
permission_view_time_entries: "View spent time"
permission_view_timelines: "View timelines"
permission_view_wiki_edits: "View wiki history"
permission_view_wiki_pages: "View wiki"
placeholders:
default: "-"
project:
destroy:
confirmation: "If you continue, the project %{identifier} and all related data will be permanently destroyed."
info: "Deleting the project is an irreversible action."
project_verification: "Enter the project's name %{name} to verify the deletion."
subprojects_confirmation: "Its subproject(s): %{value} will also be deleted."
title: "Delete the project %{name}"
identifier:
warning_one: Members of the project will have to relocate the project's repositories.
warning_two: Existing links to the project will no longer work.
title: Change the project's identifier
template:
copying: >
Your project is being created from the selected template project.
You will be notified by mail as soon as the project is available.
use_template: 'Use template'
make_template: 'Set as template'
remove_from_templates: 'Remove from templates'
archive:
are_you_sure: "Are you sure you want to archive the project '%{name}'?"
archived: "Archived"
project_module_activity: "Activity"
project_module_forums: "Forums"
project_module_calendar: "Calendar"
project_module_work_package_tracking: "Work package tracking"
project_module_news: "News"
project_module_repository: "Repository"
project_module_wiki: "Wiki"
8 years ago
query:
attribute_and_direction: "%{attribute} (%{direction})"
# possible query parameters (e.g. issue queries),
# which are not attributes of an AR-Model.
query_fields:
active_or_archived: "Active or archived"
assigned_to_role: "Assignee's role"
member_of_group: "Assignee's group"
assignee_or_group: "Assignee or belonging group"
subproject_id: "Including Subproject"
only_subproject_id: "Only subproject"
name_or_identifier: "Name or identifier"
repositories:
at_identifier: 'at %{identifier}'
atom_revision_feed: 'Atom revision feed'
autofetch_information: "Check this if you want repositories to be updated automatically when accessing the repository module page.\nThis encompasses the retrieval of commits from the repository and refreshing the required disk storage."
checkout:
access:
readwrite: 'Read + Write'
read: 'Read-only'
none: 'No checkout access, you may only view the repository through this application.'
access_permission: 'Your permissions on this repository'
url: "Checkout URL"
base_url_text: "The base URL to use for generating checkout URLs (e.g., https://myserver.example.org/repos/).\nNote: The base URL is only used for rewriting checkout URLs in managed repositories. Other repositories are not altered."
default_instructions:
git: |-
The data contained in this repository can be downloaded to your computer with Git.
Please consult the documentation of Git if you need more information on the checkout procedure and available clients.
subversion: |-
The data contained in this repository can be downloaded to your computer with Subversion.
Please consult the documentation of Subversion if you need more information on the checkout procedure and available clients.
enable_instructions_text: "Displays checkout instructions defined below on all repository-related pages."
instructions: "Checkout instructions"
show_instructions: "Display checkout instructions"
text_instructions: "This text is displayed alongside the checkout URL for guidance on how to check out the repository."
not_available: "Checkout instructions are not defined for this repository. Ask your administrator to enable them for this repository in the system settings."
create_managed_delay: "Please note: The repository is managed, it is created asynchronously on the disk and will be available shortly."
create_successful: "The repository has been registered."
delete_sucessful: "The repository has been deleted."
destroy:
confirmation: "If you continue, this will permanently delete the managed repository."
info: "Deleting the repository is an irreversible action."
info_not_managed: "Note: This will NOT delete the contents of this repository, as it is not managed by OpenProject."
managed_path_note: "The following directory will be erased: %{path}"
repository_verification: "Enter the project's identifier %{identifier} to verify the deletion of its repository."
subtitle: "Do you really want to delete the %{repository_type} of the project %{project_name}?"
subtitle_not_managed: "Do you really want to remove the linked %{repository_type} %{url} from the project %{project_name}?"
title: "Delete the %{repository_type}"
title_not_managed: "Remove the linked %{repository_type}?"
errors:
build_failed: "Unable to create the repository with the selected configuration. %{reason}"
managed_delete: "Unable to delete the managed repository."
managed_delete_local: "Unable to delete the local repository on filesystem at '%{path}': %{error_message}"
empty_repository: "The repository exists, but is empty. It does not contain any revisions yet."
exists_on_filesystem: "The repository directory already exists in the filesystem."
filesystem_access_failed: "An error occurred while accessing the repository in the filesystem: %{message}"
not_manageable: "This repository vendor cannot be managed by OpenProject."
path_permission_failed: "An error occurred trying to create the following path: %{path}. Please ensure that OpenProject may write to that folder."
unauthorized: "You're not authorized to access the repository or the credentials are invalid."
unavailable: "The repository is unavailable."
exception_title: "Cannot access the repository: %{message}"
disabled_or_unknown_type: "The selected type %{type} is disabled or no longer available for the SCM vendor %{vendor}."
disabled_or_unknown_vendor: "The SCM vendor %{vendor} is disabled or no longer available."
remote_call_failed: "Calling the managed remote failed with message '%{message}' (Code: %{code})"
remote_invalid_response: "Received an invalid response from the managed remote."
remote_save_failed: "Could not save the repository with the parameters retrieved from the remote."
git:
instructions:
managed_url: "This is the URL of the managed (local) Git repository."
path: >-
Specify the path to your local Git repository ( e.g., %{example_path} ).
You can also use remote repositories which are cloned to a local copy by
using a value starting with http(s):// or file://.
path_encoding: "Override Git path encoding (Default: UTF-8)"
local_title: "Link existing local Git repository"
local_url: "Local URL"
local_introduction: "If you have an existing local Git repository, you can link it with OpenProject to access it from within the application."
managed_introduction: "Let OpenProject create and integrate a local Git repository automatically."
managed_title: "Git repository integrated into OpenProject"
managed_url: "Managed URL"
path: "Path to Git repository"
path_encoding: "Path encoding"
go_to_revision: "Go to revision"
managed_remote: "Managed repositories for this vendor are handled remotely."
managed_remote_note: "Information on the URL and path of this repository is not available prior to its creation."
managed_url: "Managed URL"
settings:
automatic_managed_repos_disabled: "Disable automatic creation"
automatic_managed_repos: "Automatic creation of managed repositories"
automatic_managed_repos_text: "By setting a vendor here, newly created projects will automatically receive a managed repository of this vendor."
scm_vendor: "Source control management system"
scm_type: "Repository type"
scm_types:
local: "Link existing local repository"
existing: "Link existing repository"
managed: "Create new repository in OpenProject"
storage:
not_available: "Disk storage consumption is not available for this repository."
update_timeout: "Keep the last required disk space information for a repository for N minutes.\nAs counting the required disk space of a repository may be costly, increase this value to reduce performance impact."
subversion:
existing_title: "Existing Subversion repository"
existing_introduction: "If you have an existing Subversion repository, you can link it with OpenProject to access it from within the application."
existing_url: "Existing URL"
instructions:
managed_url: "This is the URL of the managed (local) Subversion repository."
url: "Enter the repository URL. This may either target a local repository (starting with %{local_proto} ), or a remote repository.\nThe following URL schemes are supported:"
managed_title: "Subversion repository integrated into OpenProject"
managed_introduction: "Let OpenProject create and integrate a local Subversion repository automatically."
managed_url: "Managed URL"
password: "Repository Password"
username: "Repository username"
truncated: "Sorry, we had to truncate this directory to %{limit} files. %{truncated} entries were omitted from the list."
named_repository: "%{vendor_name} repository"
update_settings_successful: "The settings have been successfully saved."
url: "URL to repository"
warnings:
cannot_annotate: "This file cannot be annotated."
scheduling:
activated: 'activated'
deactivated: 'deactivated'
search_input_placeholder: "Search ..."
setting_apiv3_cors_enabled: "Enable CORS"
setting_apiv3_cors_origins: "API V3 Cross-Origin Resource Sharing (CORS) allowed origins"
setting_apiv3_cors_origins_text_html: >
If CORS is enabled, these are the origins that are allowed to access OpenProject API.
<br/>
Please check the <a href="%{origin_link}" target="_blank">Documentation on the Origin header</a> on how to specify the expected values.
setting_apiv3_docs: "Documentation"
setting_apiv3_docs_enabled: "Enable docs page"
setting_apiv3_docs_enabled_instructions_html: >
If the docs page is enabled you can get an interactive view of the APIv3 documentation under
<a href="%{link}" target="_blank">%{link}</a>.
[37868] Whitelist for attachment mime types and extensions on upload (#9431) * Add setting for whitelist * Make attachments API BaseServices compatible * Add prepare service and contract * Correctly pass the filename to the UploadedFile * Add presence check to filename * Fix expected validation message * We no longer raise a multipart error when metadata is empty * Fix filesize validation on prepared uploads * Add parser error if invalid metadata json * When attachment is not saved, use filename property * Return correct error message on JSON parser erroro * Fix specs * Use attachment upload representer * Fix direct uploads mocks with new service layer * Lint * Fix export job using attachment service * Fix IFC controller using attachment prepare service * Fix export job * RenameRename params_getter to params_source * Fix mail handler using attachment service * Fix usage of attachment create service in documents * Reuse shared examples for document attachment spec * Fix stubbed attachment service in export job spec * Use admin user in backup spec * Fix export job for bim * Fix attachment integration spec * Fix issues_controller spec * Make budget resource spec reuse common examples * Fix attachment parsing representer spec * Replace prepare part of attachment spec into separate service spec * Clear cache for login spec * Convert document create/update into services * Budget services * Allow options to be passed to property twin * Remove setting author on budget initialize * Replace meetings update with services * Replace ifc models attachment handling with services * Don't check uploader if changed by system * Fix uploader being changed by system * Replace wiki page attach_files with attachable services * Replace avatar saving * Replace snapshot attach_files * Skip double validation when container present * Set snapshot through attachment service * Remove attach_files * Validate content type in contract * Enforce writing the content type without accepting user input * Expect changed content_type * Fix content of viewpoint image to get correct content type * Fix tsv spec * Add create contract spec * Bypass whitelist in internal services when conflicting with user * Fix expects in specs after whitelist bypass * Render contract errors for wiki * Add before_hook to bodied to allow to pre-authorize permissions * Budget errors from contract * Document errors from contract
3 years ago
setting_attachment_whitelist: "Attachment upload whitelist"
setting_email_delivery_method: "Email delivery method"
setting_sendmail_location: "Location of the sendmail executable"
setting_smtp_enable_starttls_auto: "Automatically use STARTTLS if available"
setting_smtp_ssl: "Use SSL connection"
setting_smtp_address: "SMTP server"
setting_smtp_port: "SMTP port"
setting_smtp_authentication: "SMTP authentication"
setting_smtp_user_name: "SMTP username"
setting_smtp_password: "SMTP password"
setting_smtp_domain: "SMTP HELLO domain"
setting_activity_days_default: "Days displayed on project activity"
setting_app_subtitle: "Application subtitle"
setting_app_title: "Application title"
setting_attachment_max_size: "Attachment max. size"
setting_autofetch_changesets: "Autofetch repository changes"
setting_autologin: "Autologin"
setting_available_languages: "Available languages"
setting_bcc_recipients: "Blind carbon copy recipients (bcc)"
setting_brute_force_block_after_failed_logins: "Block user after this number of failed login attempts"
setting_brute_force_block_minutes: "Time the user is blocked for"
setting_cache_formatted_text: "Cache formatted text"
setting_use_wysiwyg_description: "Select to enable CKEditor5 WYSIWYG editor for all users by default. CKEditor has limited functionality for GFM Markdown."
setting_column_options: "Customize the appearance of the work package lists"
setting_commit_fix_keywords: "Fixing keywords"
setting_commit_logs_encoding: "Commit messages encoding"
setting_commit_logtime_activity_id: "Activity for logged time"
setting_commit_logtime_enabled: "Enable time logging"
setting_commit_ref_keywords: "Referencing keywords"
setting_consent_time: "Consent time"
7 years ago
setting_consent_info: "Consent information text"
setting_consent_required: "Consent required"
setting_consent_decline_mail: "Consent contact mail address"
setting_cross_project_work_package_relations: "Allow cross-project work package relations"
setting_first_week_of_year: "First week in year contains"
setting_date_format: "Date format"
setting_default_language: "Default language"
setting_default_projects_modules: "Default enabled modules for new projects"
setting_default_projects_public: "New projects are public by default"
setting_diff_max_lines_displayed: "Max number of diff lines displayed"
setting_display_subprojects_work_packages: "Display subprojects work packages on main projects by default"
setting_emails_footer: "Emails footer"
setting_emails_header: "Emails header"
setting_email_login: "Use email as login"
setting_enabled_scm: "Enabled SCM"
setting_enabled_projects_columns: "Visible in project list"
[26688] In-app notifications (#9399) * Add bell icon to icon font * Add in app notification in top menu * Add fullscreen modal * Add notification modal and items * Style items * Toggle details of item * Mark all read * Add no results box * wip specification for event api * Add events table, query and index * Send out events from WP notification mailer job There we have the recipients present * Add cleanup job for older events with a setting * Hide bell notification when not logged * Add specs for events API index/show * Fix setting yml key * remove pry in event creation * Fix before hook in events API to after_validation * Fix polymorphic association raising exception for aggregated journals * Fix typo in read_ian * Fix yml entry for mentioned * Add read/unread post actions to event API and add specs * Wire up API to frontend * Fix order on events * Switch to unread in notification * Add event query * rename WPEventService * route wp mail sending over events * rename spec methods * author becomes watcher * correct message call signature * rename events to notifications * renname parameter to reflect notification nature * create author watcher for existing work packages * Merge unreadCount from store * Take a stab at polymorphic representers * Fix link generation in polymorphic resources For journals, no title is being generated however * Fix frontend model for context * Use timer for polling * add notification_setting data layer * Fix show resource spec * Fix duplicate class in notification bell item * Add minimal feature spec for notification * API for notification settings * Persist notifications * adapt work package notification creation to notification settings * extract notified_on_all * consolidate wp#recipients * concentrate wp notification in journal service * simplify methods * Remove unused patch endpoint * Add specs for rendering and parsing notification settings * Contract spec * Update service spec * adapt specs * Angular notifications frontend commit e29dced64699eb5f2443b9307c78343c9a58d1ee Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 17:34:50 2021 +0200 Create Akita store and query for notification settings commit 1a45c26c1a0c147d15393e49d2625aca4851a64d Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 11:09:25 2021 +0200 Remove tabs from notificaition settings page commit 0ea21e90c13a197f8bf2cfba1b60ddcff4e5e827 Author: Oliver Günther <mail@oliverguenther.de> Date: Sun Jun 20 21:55:48 2021 +0200 WIP in app settings * migrate notification data * add project visible filter to project query * Add inline-create and table display grouped by project * Add notifications under admin/users * Remove notifications partial * Rename notififcations store to user preferences store * Add setting for self_notified and hook that up to the backend * Add aria-label to table checkboxes * Restyle table and toolbar * replace remains of mail_notifications attribute * initialize notification settings for new user * adapt my_preferences references * reenable no self notified for documents * adapt specs * Avoid has_many :notifcation_settings Rails magically autosaves the user's preferences when the user gets saved, which somehow also tries to save the notfifications even when unchanged. This breaks some specs such as the avatar upload spec. As we can't update the assocation through rails anyway, just delegate to the user for reading instead. * Restore update method of notification settings * Restore update spec * fix spec syntax * lint scss * linting * Fix content_tag for bell icon * Add feature specs for notification settings * Disable ContentTag cop * use visible filter to get projects for notification The visible filter will reduce the project list down to the set of projects visible to the user provided as a parameter. This includes public projects. * test for actual mail sending * adapt me resource path this.apiV3Service.users.me changed its type in 0d6c0b6bc7620de94e00e72b36d6cbc1ec4c8db4 * Implement changed migration * Linting * Add actor to notification representer * Fix factory creating a duplicate WP journal * Add work packages loading and journal details to notification entry component * IAN basic facets, keep and expanded states. * Fix notification bell spec * Render body separately and add auto updating relative time * Add fixedTime title * Add actor to notification entry * Fix clicking links on work package and project * Tiny styling changes on entry row * Disable count in notification if larger than 99 (wont fit) * Introduce virtual scrolling to entry table * allow delaying & prevent mail sending if ain read Introduces a setting to delay mail sending after a journal aggregation time has expired. That way, users can confirm a notification in app. If they do before the delay expires, no mail is sent out additionally for that user. * consolidate notifications (in&out) into shared admin menu Co-authored-by: ulferts <jens.ulferts@googlemail.com> Co-authored-by: Wieland Lindenthal <w.lindenthal@forkmerge.com>
3 years ago
setting_notification_retention_period_days: "Notification retention period"
setting_notification_email_delay_minutes: "Email sending delay"
setting_notification_email_digest_time: "Email digest time"
setting_feeds_enabled: "Enable Feeds"
setting_feeds_limit: "Feed content limit"
setting_file_max_size_displayed: "Max size of text files displayed inline"
setting_host_name: "Host name"
setting_invitation_expiration_days: "Activation email expires after"
11 years ago
setting_work_package_done_ratio: "Calculate the work package done ratio with"
setting_work_package_done_ratio_field: "Use the work package field"
setting_work_package_done_ratio_status: "Use the work package status"
11 years ago
setting_work_package_done_ratio_disabled: "Disable (hide the progress)"
setting_work_package_list_default_columns: "Display by default"
setting_work_package_properties: "Work package properties"
setting_work_package_startdate_is_adddate: "Use current date as start date for new work packages"
setting_work_packages_export_limit: "Work packages export limit"
[26688] In-app notifications (#9399) * Add bell icon to icon font * Add in app notification in top menu * Add fullscreen modal * Add notification modal and items * Style items * Toggle details of item * Mark all read * Add no results box * wip specification for event api * Add events table, query and index * Send out events from WP notification mailer job There we have the recipients present * Add cleanup job for older events with a setting * Hide bell notification when not logged * Add specs for events API index/show * Fix setting yml key * remove pry in event creation * Fix before hook in events API to after_validation * Fix polymorphic association raising exception for aggregated journals * Fix typo in read_ian * Fix yml entry for mentioned * Add read/unread post actions to event API and add specs * Wire up API to frontend * Fix order on events * Switch to unread in notification * Add event query * rename WPEventService * route wp mail sending over events * rename spec methods * author becomes watcher * correct message call signature * rename events to notifications * renname parameter to reflect notification nature * create author watcher for existing work packages * Merge unreadCount from store * Take a stab at polymorphic representers * Fix link generation in polymorphic resources For journals, no title is being generated however * Fix frontend model for context * Use timer for polling * add notification_setting data layer * Fix show resource spec * Fix duplicate class in notification bell item * Add minimal feature spec for notification * API for notification settings * Persist notifications * adapt work package notification creation to notification settings * extract notified_on_all * consolidate wp#recipients * concentrate wp notification in journal service * simplify methods * Remove unused patch endpoint * Add specs for rendering and parsing notification settings * Contract spec * Update service spec * adapt specs * Angular notifications frontend commit e29dced64699eb5f2443b9307c78343c9a58d1ee Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 17:34:50 2021 +0200 Create Akita store and query for notification settings commit 1a45c26c1a0c147d15393e49d2625aca4851a64d Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 11:09:25 2021 +0200 Remove tabs from notificaition settings page commit 0ea21e90c13a197f8bf2cfba1b60ddcff4e5e827 Author: Oliver Günther <mail@oliverguenther.de> Date: Sun Jun 20 21:55:48 2021 +0200 WIP in app settings * migrate notification data * add project visible filter to project query * Add inline-create and table display grouped by project * Add notifications under admin/users * Remove notifications partial * Rename notififcations store to user preferences store * Add setting for self_notified and hook that up to the backend * Add aria-label to table checkboxes * Restyle table and toolbar * replace remains of mail_notifications attribute * initialize notification settings for new user * adapt my_preferences references * reenable no self notified for documents * adapt specs * Avoid has_many :notifcation_settings Rails magically autosaves the user's preferences when the user gets saved, which somehow also tries to save the notfifications even when unchanged. This breaks some specs such as the avatar upload spec. As we can't update the assocation through rails anyway, just delegate to the user for reading instead. * Restore update method of notification settings * Restore update spec * fix spec syntax * lint scss * linting * Fix content_tag for bell icon * Add feature specs for notification settings * Disable ContentTag cop * use visible filter to get projects for notification The visible filter will reduce the project list down to the set of projects visible to the user provided as a parameter. This includes public projects. * test for actual mail sending * adapt me resource path this.apiV3Service.users.me changed its type in 0d6c0b6bc7620de94e00e72b36d6cbc1ec4c8db4 * Implement changed migration * Linting * Add actor to notification representer * Fix factory creating a duplicate WP journal * Add work packages loading and journal details to notification entry component * IAN basic facets, keep and expanded states. * Fix notification bell spec * Render body separately and add auto updating relative time * Add fixedTime title * Add actor to notification entry * Fix clicking links on work package and project * Tiny styling changes on entry row * Disable count in notification if larger than 99 (wont fit) * Introduce virtual scrolling to entry table * allow delaying & prevent mail sending if ain read Introduces a setting to delay mail sending after a journal aggregation time has expired. That way, users can confirm a notification in app. If they do before the delay expires, no mail is sent out additionally for that user. * consolidate notifications (in&out) into shared admin menu Co-authored-by: ulferts <jens.ulferts@googlemail.com> Co-authored-by: Wieland Lindenthal <w.lindenthal@forkmerge.com>
3 years ago
setting_journal_aggregation_time_minutes: "User actions aggregated within"
setting_log_requesting_user: "Log user login, name, and mail address for all requests"
setting_login_required: "Authentication required"
setting_mail_from: "Emission email address"
setting_mail_handler_api_key: "API key"
setting_mail_handler_body_delimiters: "Truncate emails after one of these lines"
setting_mail_handler_body_delimiter_regex: "Truncate emails matching this regex"
setting_mail_handler_ignore_filenames: "Ignored mail attachments"
setting_new_project_user_role_id: "Role given to a non-admin user who creates a project"
setting_password_active_rules: "Active character classes"
setting_password_count_former_banned: "Number of most recently used passwords banned for reuse"
setting_password_days_valid: "Number of days, after which to enforce a password change"
setting_password_min_length: "Minimum length"
setting_password_min_adhered_rules: "Minimum number of required classes"
setting_per_page_options: "Objects per page options"
setting_plain_text_mail: "Plain text mail (no HTML)"
setting_protocol: "Protocol"
setting_project_gantt_query: "Project portfolio Gantt view"
setting_project_gantt_query_text: "You can modify the query that is used to display Gantt chart from the project overview page."
setting_security_badge_displayed: "Display security badge"
setting_registration_footer: "Registration footer"
setting_repositories_automatic_managed_vendor: "Automatic repository vendor type"
setting_repositories_encodings: "Repositories encodings"
setting_repository_authentication_caching_enabled: "Enable caching for authentication request of version control software"
setting_repository_storage_cache_minutes: "Repository disk size cache"
setting_repository_checkout_display: "Show checkout instructions"
setting_repository_checkout_base_url: "Checkout base URL"
setting_repository_checkout_text: "Checkout instruction text"
setting_repository_log_display_limit: "Maximum number of revisions displayed on file log"
setting_repository_truncate_at: "Maximum number of files displayed in the repository browser"
setting_rest_api_enabled: "Enable REST web service"
setting_self_registration: "Self-registration"
setting_session_ttl: "Session expiry time after inactivity"
setting_session_ttl_hint: "Value below 5 works like disabled"
setting_session_ttl_enabled: "Session expires"
setting_start_of_week: "Week starts on"
setting_sys_api_enabled: "Enable repository management web service"
setting_sys_api_description: "The repository management web service provides integration and user authorization for accessing repositories."
setting_time_format: "Time format"
setting_accessibility_mode_for_anonymous: "Enable accessibility mode for anonymous users"
setting_user_format: "Users display format"
setting_user_default_timezone: "Users default time zone"
setting_users_deletable_by_admins: "User accounts deletable by admins"
setting_users_deletable_by_self: "Users allowed to delete their accounts"
setting_welcome_text: "Welcome block text"
setting_welcome_title: "Welcome block title"
setting_welcome_on_homescreen: "Display welcome block on homescreen"
setting_work_package_list_default_highlighting_mode: "Default highlighting mode"
setting_work_package_list_default_highlighted_attributes: "Default inline highlighted attributes"
settings:
general: "General"
other: "Other"
passwords: "Passwords"
session: "Session"
brute_force_prevention: "Automated user blocking"
[37868] Whitelist for attachment mime types and extensions on upload (#9431) * Add setting for whitelist * Make attachments API BaseServices compatible * Add prepare service and contract * Correctly pass the filename to the UploadedFile * Add presence check to filename * Fix expected validation message * We no longer raise a multipart error when metadata is empty * Fix filesize validation on prepared uploads * Add parser error if invalid metadata json * When attachment is not saved, use filename property * Return correct error message on JSON parser erroro * Fix specs * Use attachment upload representer * Fix direct uploads mocks with new service layer * Lint * Fix export job using attachment service * Fix IFC controller using attachment prepare service * Fix export job * RenameRename params_getter to params_source * Fix mail handler using attachment service * Fix usage of attachment create service in documents * Reuse shared examples for document attachment spec * Fix stubbed attachment service in export job spec * Use admin user in backup spec * Fix export job for bim * Fix attachment integration spec * Fix issues_controller spec * Make budget resource spec reuse common examples * Fix attachment parsing representer spec * Replace prepare part of attachment spec into separate service spec * Clear cache for login spec * Convert document create/update into services * Budget services * Allow options to be passed to property twin * Remove setting author on budget initialize * Replace meetings update with services * Replace ifc models attachment handling with services * Don't check uploader if changed by system * Fix uploader being changed by system * Replace wiki page attach_files with attachable services * Replace avatar saving * Replace snapshot attach_files * Skip double validation when container present * Set snapshot through attachment service * Remove attach_files * Validate content type in contract * Enforce writing the content type without accepting user input * Expect changed content_type * Fix content of viewpoint image to get correct content type * Fix tsv spec * Add create contract spec * Bypass whitelist in internal services when conflicting with user * Fix expects in specs after whitelist bypass * Render contract errors for wiki * Add before_hook to bodied to allow to pre-authorize permissions * Budget errors from contract * Document errors from contract
3 years ago
attachments:
whitelist_text_html: >
Define a list of valid file extensions and/or mime types for uploaded files.
<br/>
Enter file extensions (e.g., <code>%{ext_example}</code>) or mime types (e.g., <code>%{mime_example}</code>).
<br/>
Leave empty to allow any file type to be uploaded.
Multiple values allowed (one line for each value).
[26688] In-app notifications (#9399) * Add bell icon to icon font * Add in app notification in top menu * Add fullscreen modal * Add notification modal and items * Style items * Toggle details of item * Mark all read * Add no results box * wip specification for event api * Add events table, query and index * Send out events from WP notification mailer job There we have the recipients present * Add cleanup job for older events with a setting * Hide bell notification when not logged * Add specs for events API index/show * Fix setting yml key * remove pry in event creation * Fix before hook in events API to after_validation * Fix polymorphic association raising exception for aggregated journals * Fix typo in read_ian * Fix yml entry for mentioned * Add read/unread post actions to event API and add specs * Wire up API to frontend * Fix order on events * Switch to unread in notification * Add event query * rename WPEventService * route wp mail sending over events * rename spec methods * author becomes watcher * correct message call signature * rename events to notifications * renname parameter to reflect notification nature * create author watcher for existing work packages * Merge unreadCount from store * Take a stab at polymorphic representers * Fix link generation in polymorphic resources For journals, no title is being generated however * Fix frontend model for context * Use timer for polling * add notification_setting data layer * Fix show resource spec * Fix duplicate class in notification bell item * Add minimal feature spec for notification * API for notification settings * Persist notifications * adapt work package notification creation to notification settings * extract notified_on_all * consolidate wp#recipients * concentrate wp notification in journal service * simplify methods * Remove unused patch endpoint * Add specs for rendering and parsing notification settings * Contract spec * Update service spec * adapt specs * Angular notifications frontend commit e29dced64699eb5f2443b9307c78343c9a58d1ee Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 17:34:50 2021 +0200 Create Akita store and query for notification settings commit 1a45c26c1a0c147d15393e49d2625aca4851a64d Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 11:09:25 2021 +0200 Remove tabs from notificaition settings page commit 0ea21e90c13a197f8bf2cfba1b60ddcff4e5e827 Author: Oliver Günther <mail@oliverguenther.de> Date: Sun Jun 20 21:55:48 2021 +0200 WIP in app settings * migrate notification data * add project visible filter to project query * Add inline-create and table display grouped by project * Add notifications under admin/users * Remove notifications partial * Rename notififcations store to user preferences store * Add setting for self_notified and hook that up to the backend * Add aria-label to table checkboxes * Restyle table and toolbar * replace remains of mail_notifications attribute * initialize notification settings for new user * adapt my_preferences references * reenable no self notified for documents * adapt specs * Avoid has_many :notifcation_settings Rails magically autosaves the user's preferences when the user gets saved, which somehow also tries to save the notfifications even when unchanged. This breaks some specs such as the avatar upload spec. As we can't update the assocation through rails anyway, just delegate to the user for reading instead. * Restore update method of notification settings * Restore update spec * fix spec syntax * lint scss * linting * Fix content_tag for bell icon * Add feature specs for notification settings * Disable ContentTag cop * use visible filter to get projects for notification The visible filter will reduce the project list down to the set of projects visible to the user provided as a parameter. This includes public projects. * test for actual mail sending * adapt me resource path this.apiV3Service.users.me changed its type in 0d6c0b6bc7620de94e00e72b36d6cbc1ec4c8db4 * Implement changed migration * Linting * Add actor to notification representer * Fix factory creating a duplicate WP journal * Add work packages loading and journal details to notification entry component * IAN basic facets, keep and expanded states. * Fix notification bell spec * Render body separately and add auto updating relative time * Add fixedTime title * Add actor to notification entry * Fix clicking links on work package and project * Tiny styling changes on entry row * Disable count in notification if larger than 99 (wont fit) * Introduce virtual scrolling to entry table * allow delaying & prevent mail sending if ain read Introduces a setting to delay mail sending after a journal aggregation time has expired. That way, users can confirm a notification in app. If they do before the delay expires, no mail is sent out additionally for that user. * consolidate notifications (in&out) into shared admin menu Co-authored-by: ulferts <jens.ulferts@googlemail.com> Co-authored-by: Wieland Lindenthal <w.lindenthal@forkmerge.com>
3 years ago
notifications:
retention_text: >
Set the number of days notification events for users (the source for in-app notifications)
will be kept in the system. Any events older than this time will be deleted.
delay_minutes_explanation: "Email sending can be delayed to allow users with configured in app notification to confirm the notification within the application before a mail is sent out. Users who read a notification within the application will not receive an email for the already read notification."
email_digest_explanation: "Once a day, an email digest can be sent out containing a collection of all the notification users subscribed to. The setting is relative to each users configured time zone, so e.g. 8:00 will be executed at 7:00 UTC for users in UTC+1 and 9:00 UTC for those in UTC-1."
events_explanation: 'Governs for which event an email is sent out. Work packages are excluded from this list as the notifications for them can be configured specifically for every user.'
display:
first_date_of_week_and_year_set: >
If either options "%{day_of_week_setting_name}" or "%{first_week_setting_name}" are set,
the other has to be set as well to avoid inconsistencies in the frontend.
first_week_of_year_text: >
Select the date of January that is contained in the first week of the year.
This value together with first day of the week determines the total number of weeks in a year.
projects:
section_new_projects: "Settings for new projects"
section_project_overview: "Settings for project overview list"
user:
default_preferences: "Default preferences"
deletion: "Deletion"
highlighting:
mode_long:
inline: "Highlight attribute(s) inline"
none: "No highlighting"
status: "Entire row by Status"
type: "Entire row by Type"
priority: "Entire row by Priority"
text_formatting:
markdown: 'Markdown'
plain: 'Plain text'
status_active: "active"
status_archived: "archived"
status_invited: invited
status_locked: locked
9 years ago
status_registered: registered
# Used in array.to_sentence.
support:
array:
sentence_connector: "and"
skip_last_comma: "false"
text_accessibility_hint: "The accessibility mode is designed for users who are blind, motorically handicaped or have a bad eyesight. For the latter focused elements are specially highlighted. Please notice, that the Backlogs module is not available in this mode."
text_access_token_hint: "Access tokens allow you to grant external applications access to resources in OpenProject."
text_analyze: "Further analyze: %{subject}"
text_are_you_sure: "Are you sure?"
text_are_you_sure_with_children: "Delete work package and all child work packages?"
text_assign_to_project: "Assign to the project"
text_form_configuration: >
You can customize which fields will be displayed in work package forms.
You can freely group the fields to reflect the needs for your domain.
text_form_configuration_required_attribute: "Attribute is marked required and thus always shown"
text_caracters_maximum: "%{count} characters maximum."
text_caracters_minimum: "Must be at least %{count} characters long."
text_comma_separated: "Multiple values allowed (comma separated)."
text_comment_wiki_page: "Comment to wiki page: %{page}"
text_custom_field_possible_values_info: "One line for each value"
text_custom_field_hint_activate_per_project: >
When using custom fields: Keep in mind that custom fields need to be
activated per project, too.
text_custom_field_hint_activate_per_project_and_type: >
Custom fields need to be activated per work
package type and per project.
text_custom_logo_instructions: >
A white logo on transparent background is recommended.
For best results on both, conventional and retina displays,
make sure your image's dimensions are 460px by 60px.
text_custom_favicon_instructions: >
This is the tiny icon that appears in your browser window/tab next to the
page's title.
It's needs to be a squared 32 by 32 pixels sized PNG image file with a transparent background.
text_custom_touch_icon_instructions: >
This is the icon that appears in your mobile or tablet when you place a
bookmark on your homescreen.
It's needs to be a squared 180 by 180 pixels sized PNG image file. Please
make sure the image's background is not transparent otherwise it will look
bad on iOS.
text_database_allows_tsv: "Database allows TSVector (optional)"
text_default_administrator_account_changed: "Default administrator account changed"
text_default_encoding: "Default: UTF-8"
text_destroy: "Delete"
text_destroy_with_associated: "There are additional objects assossociated with the work package(s) that are to be deleted. Those objects are of the following types:"
text_destroy_what_to_do: "What do you want to do?"
text_diff_truncated: "... This diff was truncated because it exceeds the maximum size that can be displayed."
text_email_delivery_not_configured: "Email delivery is not configured, and notifications are disabled.\nConfigure your SMTP server to enable them."
text_enumeration_category_reassign_to: "Reassign them to this value:"
text_enumeration_destroy_question: "%{count} objects are assigned to this value."
text_file_repository_writable: "Attachments directory writable"
text_git_repo_example: "a bare and local repository (e.g. /gitrepo, c:\\gitrepo)"
text_hint_date_format: "Enter a date in the form of YYYY-MM-DD. Other formats may be changed to an unwanted date."
text_hint_disable_with_0: "Note: Disable with 0"
text_hours_between: "Between %{min} and %{max} hours."
text_work_package_added: "Work package %{id} has been reported by %{author}."
text_work_package_category_destroy_assignments: "Remove category assignments"
text_work_package_category_destroy_question: "Some work packages (%{count}) are assigned to this category. What do you want to do?"
text_work_package_category_reassign_to: "Reassign work packages to this category"
text_work_package_updated: "Work package %{id} has been updated by %{author}."
5 years ago
text_work_package_watcher_added: "You have been added as a watcher to Work package %{id} by %{watcher_changer}."
text_work_package_watcher_removed: "You have been removed from watchers of Work package %{id} by %{watcher_changer}."
text_work_packages_destroy_confirmation: "Are you sure you want to delete the selected work package(s)?"
text_work_packages_ref_in_commit_messages: "Referencing and fixing work packages in commit messages"
text_journal_added: "%{label} %{value} added"
[26688] In-app notifications (#9399) * Add bell icon to icon font * Add in app notification in top menu * Add fullscreen modal * Add notification modal and items * Style items * Toggle details of item * Mark all read * Add no results box * wip specification for event api * Add events table, query and index * Send out events from WP notification mailer job There we have the recipients present * Add cleanup job for older events with a setting * Hide bell notification when not logged * Add specs for events API index/show * Fix setting yml key * remove pry in event creation * Fix before hook in events API to after_validation * Fix polymorphic association raising exception for aggregated journals * Fix typo in read_ian * Fix yml entry for mentioned * Add read/unread post actions to event API and add specs * Wire up API to frontend * Fix order on events * Switch to unread in notification * Add event query * rename WPEventService * route wp mail sending over events * rename spec methods * author becomes watcher * correct message call signature * rename events to notifications * renname parameter to reflect notification nature * create author watcher for existing work packages * Merge unreadCount from store * Take a stab at polymorphic representers * Fix link generation in polymorphic resources For journals, no title is being generated however * Fix frontend model for context * Use timer for polling * add notification_setting data layer * Fix show resource spec * Fix duplicate class in notification bell item * Add minimal feature spec for notification * API for notification settings * Persist notifications * adapt work package notification creation to notification settings * extract notified_on_all * consolidate wp#recipients * concentrate wp notification in journal service * simplify methods * Remove unused patch endpoint * Add specs for rendering and parsing notification settings * Contract spec * Update service spec * adapt specs * Angular notifications frontend commit e29dced64699eb5f2443b9307c78343c9a58d1ee Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 17:34:50 2021 +0200 Create Akita store and query for notification settings commit 1a45c26c1a0c147d15393e49d2625aca4851a64d Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 11:09:25 2021 +0200 Remove tabs from notificaition settings page commit 0ea21e90c13a197f8bf2cfba1b60ddcff4e5e827 Author: Oliver Günther <mail@oliverguenther.de> Date: Sun Jun 20 21:55:48 2021 +0200 WIP in app settings * migrate notification data * add project visible filter to project query * Add inline-create and table display grouped by project * Add notifications under admin/users * Remove notifications partial * Rename notififcations store to user preferences store * Add setting for self_notified and hook that up to the backend * Add aria-label to table checkboxes * Restyle table and toolbar * replace remains of mail_notifications attribute * initialize notification settings for new user * adapt my_preferences references * reenable no self notified for documents * adapt specs * Avoid has_many :notifcation_settings Rails magically autosaves the user's preferences when the user gets saved, which somehow also tries to save the notfifications even when unchanged. This breaks some specs such as the avatar upload spec. As we can't update the assocation through rails anyway, just delegate to the user for reading instead. * Restore update method of notification settings * Restore update spec * fix spec syntax * lint scss * linting * Fix content_tag for bell icon * Add feature specs for notification settings * Disable ContentTag cop * use visible filter to get projects for notification The visible filter will reduce the project list down to the set of projects visible to the user provided as a parameter. This includes public projects. * test for actual mail sending * adapt me resource path this.apiV3Service.users.me changed its type in 0d6c0b6bc7620de94e00e72b36d6cbc1ec4c8db4 * Implement changed migration * Linting * Add actor to notification representer * Fix factory creating a duplicate WP journal * Add work packages loading and journal details to notification entry component * IAN basic facets, keep and expanded states. * Fix notification bell spec * Render body separately and add auto updating relative time * Add fixedTime title * Add actor to notification entry * Fix clicking links on work package and project * Tiny styling changes on entry row * Disable count in notification if larger than 99 (wont fit) * Introduce virtual scrolling to entry table * allow delaying & prevent mail sending if ain read Introduces a setting to delay mail sending after a journal aggregation time has expired. That way, users can confirm a notification in app. If they do before the delay expires, no mail is sent out additionally for that user. * consolidate notifications (in&out) into shared admin menu Co-authored-by: ulferts <jens.ulferts@googlemail.com> Co-authored-by: Wieland Lindenthal <w.lindenthal@forkmerge.com>
3 years ago
text_journal_aggregation_time_explanation: "Individual actions of a user (e.g. updating a work package twice) are aggregated into a single action if their age difference is less than the specified timespan. They will be displayed as a single action within the application. This will also delay notifications by the same amount of time reducing the number of emails being sent."
text_journal_changed_html: "%{label} changed from %{old} %{linebreak}<strong>to</strong> %{new}"
text_journal_changed_plain: "%{label} changed from %{old} %{linebreak}to %{new}"
text_journal_changed_no_detail: "%{label} updated"
text_journal_changed_with_diff: "%{label} changed (%{link})"
text_journal_deleted: "%{label} deleted (%{old})"
12 years ago
text_journal_deleted_with_diff: "%{label} deleted (%{link})"
text_journal_set_to: "%{label} set to %{value}"
text_journal_set_with_diff: "%{label} set (%{link})"
text_journal_label_value: "%{label} %{value}"
text_latest_note: "The latest comment is: %{note}"
text_length_between: "Length between %{min} and %{max} characters."
text_line_separated: "Multiple values allowed (one line for each value)."
text_load_default_configuration: "Load the default configuration"
text_min_max_length_info: "0 means no restriction"
text_no_roles_defined: There are no roles defined.
9 years ago
text_no_access_tokens_configurable: "There are no access tokens which can be configured."
text_no_configuration_data: "Roles, types, work package statuses and workflow have not been configured yet.\nIt is highly recommended to load the default configuration. You will be able to modify it once loaded."
text_no_notes: "There are no comments available for this work package."
text_notice_too_many_values_are_inperformant: "Note: Displaying more than 100 items per page can increase the page load time."
text_notice_security_badge_displayed_html: >
Note: if enabled, this will display a badge with your installation status in the <a href="%{information_panel_path}">%{information_panel_label}</a> administration panel,
and on the home page. It is displayed to administrators only.
<br/>
The badge will check your current OpenProject version against the official OpenProject release database to alert you of any updates or known vulnerabilities.
For more information on what the check provides, what data is needed to provide available updates, and how to disable this check, please visit <a href="%{more_info_url}">the configuration documentation</a>.
text_own_membership_delete_confirmation: "You are about to remove some or all of your permissions and may no longer be able to edit this project after that.\nAre you sure you want to continue?"
text_plugin_assets_writable: "Plugin assets directory writable"
text_powered_by: "Powered by %{link}"
text_project_identifier_info: "Only lower case letters (a-z), numbers, dashes and underscores are allowed, must start with a lower case letter."
text_reassign: "Reassign to work package:"
text_regexp_info: "eg. ^[A-Z0-9]+$"
text_regexp_multiline: 'The regex is applied in a multi-line mode. e.g., ^---\s+'
text_repository_usernames_mapping: "Select or update the OpenProject user mapped to each username found in the repository log.\nUsers with the same OpenProject and repository username or email are automatically mapped."
[26688] In-app notifications (#9399) * Add bell icon to icon font * Add in app notification in top menu * Add fullscreen modal * Add notification modal and items * Style items * Toggle details of item * Mark all read * Add no results box * wip specification for event api * Add events table, query and index * Send out events from WP notification mailer job There we have the recipients present * Add cleanup job for older events with a setting * Hide bell notification when not logged * Add specs for events API index/show * Fix setting yml key * remove pry in event creation * Fix before hook in events API to after_validation * Fix polymorphic association raising exception for aggregated journals * Fix typo in read_ian * Fix yml entry for mentioned * Add read/unread post actions to event API and add specs * Wire up API to frontend * Fix order on events * Switch to unread in notification * Add event query * rename WPEventService * route wp mail sending over events * rename spec methods * author becomes watcher * correct message call signature * rename events to notifications * renname parameter to reflect notification nature * create author watcher for existing work packages * Merge unreadCount from store * Take a stab at polymorphic representers * Fix link generation in polymorphic resources For journals, no title is being generated however * Fix frontend model for context * Use timer for polling * add notification_setting data layer * Fix show resource spec * Fix duplicate class in notification bell item * Add minimal feature spec for notification * API for notification settings * Persist notifications * adapt work package notification creation to notification settings * extract notified_on_all * consolidate wp#recipients * concentrate wp notification in journal service * simplify methods * Remove unused patch endpoint * Add specs for rendering and parsing notification settings * Contract spec * Update service spec * adapt specs * Angular notifications frontend commit e29dced64699eb5f2443b9307c78343c9a58d1ee Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 17:34:50 2021 +0200 Create Akita store and query for notification settings commit 1a45c26c1a0c147d15393e49d2625aca4851a64d Author: Wieland Lindenthal <w.lindenthal@forkmerge.com> Date: Mon Jun 21 11:09:25 2021 +0200 Remove tabs from notificaition settings page commit 0ea21e90c13a197f8bf2cfba1b60ddcff4e5e827 Author: Oliver Günther <mail@oliverguenther.de> Date: Sun Jun 20 21:55:48 2021 +0200 WIP in app settings * migrate notification data * add project visible filter to project query * Add inline-create and table display grouped by project * Add notifications under admin/users * Remove notifications partial * Rename notififcations store to user preferences store * Add setting for self_notified and hook that up to the backend * Add aria-label to table checkboxes * Restyle table and toolbar * replace remains of mail_notifications attribute * initialize notification settings for new user * adapt my_preferences references * reenable no self notified for documents * adapt specs * Avoid has_many :notifcation_settings Rails magically autosaves the user's preferences when the user gets saved, which somehow also tries to save the notfifications even when unchanged. This breaks some specs such as the avatar upload spec. As we can't update the assocation through rails anyway, just delegate to the user for reading instead. * Restore update method of notification settings * Restore update spec * fix spec syntax * lint scss * linting * Fix content_tag for bell icon * Add feature specs for notification settings * Disable ContentTag cop * use visible filter to get projects for notification The visible filter will reduce the project list down to the set of projects visible to the user provided as a parameter. This includes public projects. * test for actual mail sending * adapt me resource path this.apiV3Service.users.me changed its type in 0d6c0b6bc7620de94e00e72b36d6cbc1ec4c8db4 * Implement changed migration * Linting * Add actor to notification representer * Fix factory creating a duplicate WP journal * Add work packages loading and journal details to notification entry component * IAN basic facets, keep and expanded states. * Fix notification bell spec * Render body separately and add auto updating relative time * Add fixedTime title * Add actor to notification entry * Fix clicking links on work package and project * Tiny styling changes on entry row * Disable count in notification if larger than 99 (wont fit) * Introduce virtual scrolling to entry table * allow delaying & prevent mail sending if ain read Introduces a setting to delay mail sending after a journal aggregation time has expired. That way, users can confirm a notification in app. If they do before the delay expires, no mail is sent out additionally for that user. * consolidate notifications (in&out) into shared admin menu Co-authored-by: ulferts <jens.ulferts@googlemail.com> Co-authored-by: Wieland Lindenthal <w.lindenthal@forkmerge.com>
3 years ago
text_select_notifications: "Select actions for which notifications should be sent."
text_status_changed_by_changeset: "Applied in changeset %{value}."
text_table_difference_description: "In this table the single %{entries} are shown. You can view the difference between any two entries by first selecting the according checkboxes in the table. When clicking on the button below the table the differences are shown."
text_time_logged_by_changeset: "Applied in changeset %{value}."
text_tip_work_package_begin_day: "work package beginning this day"
text_tip_work_package_begin_end_day: "work package beginning and ending this day"
text_tip_work_package_end_day: "work package ending this day"
text_type_no_workflow: "No workflow defined for this type"
text_unallowed_characters: "Unallowed characters"
text_user_invited: The user has been invited and is pending registration.
text_user_wrote: "%{value} wrote:"
text_warn_on_leaving_unsaved: "The work package contains unsaved text that will be lost if you leave this page."
text_what_did_you_change_click_to_add_comment: "What did you change? Click to add comment"
text_wiki_destroy_confirmation: "Are you sure you want to delete this wiki and all its content?"
text_wiki_page_destroy_children: "Delete child pages and all their descendants"
text_wiki_page_destroy_question: "This page has %{descendants} child page(s) and descendant(s). What do you want to do?"
text_wiki_page_nullify_children: "Keep child pages as root pages"
text_wiki_page_reassign_children: "Reassign child pages to this parent page"
text_workflow_edit: "Select a role and a type to edit the workflow"
text_zoom_in: "Zoom in"
text_zoom_out: "Zoom out"
text_setup_mail_configuration: "Configure your email provider"
time:
am: "am"
formats:
default: "%m/%d/%Y %I:%M %p"
long: "%B %d, %Y %H:%M"
short: "%d %b %H:%M"
time: "%I:%M %p"
pm: "pm"
timeframe:
show: "Show timeframe"
end: "to"
start: "from"
timelines:
admin_menu:
color: "Color"
colors: "Colors"
associations: "Dependencies"
button_delete_all: "Delete all"
change: "Change in planning"
children: "Child elements"
color_could_not_be_saved: "Color could not be saved"
current_planning: "Current planning"
dates: "Dates"
dates_are_calculated_based_on_sub_elements: "Dates are calculated based on sub elements."
delete_all: "Delete all"
delete_thing: "Delete"
duration: "Duration"
duration_days:
one: "1 day"
other: "%{count} days"
edit_color: "Edit color"
edit_thing: "Edit"
edit_timeline: "Edit timeline report %{timeline}"
delete_timeline: "Delete timeline report %{timeline}"
empty: "(empty)"
enable_type_in_project: 'Enable type "%{type}"'
end: "End"
errors:
not_implemented: "The timeline could not be rendered because it uses a feature that is not yet implemented."
report_comparison: "The timeline could not render the configured comparisons. Please check the appropriate section in the configuration, resetting it can help solve this problem."
report_epicfail: "The timeline could not be loaded due to an unexpected error."
report_timeout: "The timeline could not be loaded in a reasonable amount of time."
filter:
errors:
timeframe_start: "The timeframe start "
timeframe_end: "The timeframe end "
compare_to_relative: "The value of the relative comparison "
compare_to_absolute: "The value of the absolute comparison "
planning_element_time_relative_one: "The start for work packages in a certain timeframe "
planning_element_time_relative_two: "The end for work packages in a certain timeframe "
planning_element_time_absolute_one: "The start for work packages in a certain timeframe "
planning_element_time_absolute_two: "The end for work packages in a certain timeframe "
sort:
sortation: "Sort by"
alphabet: "alphabet"
explicit_order: "explicit order"
project_sortation: "Sort projects by"
date: "date"
default: "default"
column:
assigned_to: "Assignee"
type: "Type"
due_date: "End date"
name: "Name"
status: "Status"
start_date: "Start date"
columns: "Columns"
comparisons: "Comparisons"
comparison:
absolute: "Absolute"
none: "None"
relative: "Relative"
compare_relative_prefix: "Compare current planning to"
compare_relative_suffix: "ago"
compare_absolute: "Compare current planning to %{date}"
time_relative:
days: "days"
weeks: "weeks"
months: "months"
exclude_own_work_packages: "Hide work packages from this project"
exclude_reporters: "Hide other projects"
exclude_empty: "Hide empty projects"
grouping: "Grouping"
grouping_hide_group: "Hide group \"%{group}\""
grouping_one: "First grouping criterion"
grouping_one_phrase: "Is a subproject of"
grouping_other: "Other"
hide_chart: "Hide chart"
noneElement: "(none)"
noneSelection: "(none)"
11 years ago
outline: "Initial outline expansion"
parent: "Show subprojects of"
work_package_filters: "Filter work packages"
work_package_responsible: "Show work packages with accountable"
work_package_assignee: "Show work packages with assignee"
types: "Show types"
status: "Show status"
project_time_filter: "Projects with a work package of a certain type in a certain timeframe"
project_time_filter_timeframe: "Timeframe"
11 years ago
project_time_filter_historical_from: "from"
project_time_filter_historical_to: "to"
project_time_filter_historical: "%{start_label} %{startdate} %{end_label} %{enddate}"
project_time_filter_relative: "%{start_label} %{startspan}%{startspanunit} ago, %{end_label} %{endspan}%{endspanunit} from now"
project_filters: "Filter projects"
project_responsible: "Show projects with accountable"
project_status: "Show project status"
timeframe: "Show timeframe"
timeframe_end: "to"
timeframe_start: "from"
timeline: "General Settings"
zoom: "Zoom factor"
history: "History"
new_color: "New color"
new_association: "New dependency"
new_work_package: "New work package"
new_reporting: "New reporting"
new_timeline: "New timeline report"
no_projects_for_reporting_available: "There are no projects to which a reporting association can be created."
no_right_to_view_timeline: "You do not have the necessary permission to view the linked timeline."
no_timeline_for_id: "There is no timeline with ID %{id}."
notice_successful_deleted_all_elements: "Successfully deleted all elements"
outline: "Reset Outline"
outlines:
aggregation: "Show aggregations only"
level1: "Expand level 1"
level2: "Expand level 2"
level3: "Expand level 3"
level4: "Expand level 4"
level5: "Expand level 5"
all: "Show all"
reporting_for_project:
show: "Status reported to project: %{title}"
edit_delete: "status report for project: %{title}"
history: "History for status for project: %{title}"
reporting:
delete: "Delete status: %{comment}"
edit: "Edit status: %{comment}"
show: "Status: %{comment}"
planning_element_update: "Update: %{title}"
11 years ago
type_could_not_be_saved: "Type could not be saved"
reporting_could_not_be_saved: "Reporting could not be saved"
properties: "Properties"
really_delete_color: >
Are you sure, you want to delete the following color?
Types using this color will not be deleted.
really_delete_reporting: >
Are you sure, you want to delete the following reporting?
Previous reporting statuses will be deleted, too.
start: "Start"
timeline: "Timeline report"
timelines: "Timeline reports"
settings: "Timelines"
vertical_work_package: "Vertical work packages"
you_are_viewing_the_selected_timeline: "You are viewing the selected timeline report"
zoom:
in: "Zoom in"
out: "Zoom out"
days: "Days"
weeks: "Weeks"
months: "Months"
quarters: "Quarters"
years: "Years"
title_remove_and_delete_user: Remove the invited user from the project and delete him/her.
6 years ago
title_enterprise_upgrade: "Upgrade to unlock more users."
tooltip_user_default_timezone: >
The default time zone for new users. Can be changed in a user's settings.
tooltip_resend_invitation: >
Sends another invitation email with a fresh token in
case the old one expired or the user did not get the original email.
Can also be used for active users to choose a new authentication method.
When used with active users their status will be changed to 'invited'.
tooltip:
setting_email_login: >
If enabled a user will be unable to chose a login during registration.
Instead their given email address will serve as the login.
An administrator may still change the login separately.
queries:
apply_filter: Apply preconfigured filter
top_menu:
additional_resources: "Additional resources"
getting_started: "Getting started"
help_and_support: "Help and support"
total_progress: "Total progress"
user:
all: "all"
active: "active"
activate: "Activate"
activate_and_reset_failed_logins: "Activate and reset failed logins"
authentication_provider: "Authentication Provider"
authentication_settings_disabled_due_to_external_authentication: >
This user authenticates via an external authentication provider, so there is no password
in OpenProject to be changed.
authorization_rejected: "You are not allowed to sign in."
assign_random_password: "Assign random password (sent to user via email)"
blocked: "locked temporarily"
blocked_num_failed_logins:
one: "locked temporarily (one failed login attempt)"
other: "locked temporarily (%{count} failed login attempts)"
confirm_status_change: "You are about to change the status of '%{name}'. Are you sure you want to continue?"
deleted: "Deleted user"
error_status_change_failed: "Changing the user status failed due to the following errors: %{errors}"
invite: Invite user via email
invited: invited
lock: "Lock permanently"
locked: "locked permanently"
no_login: "This user authenticates through login by password. Since it is disabled, they cannot log in."
password_change_unsupported: Change of password is not supported.
registered: "registered"
reset_failed_logins: "Reset failed logins"
status_user_and_brute_force: "%{user} and %{brute_force}"
status_change: "Status change"
text_change_disabled_for_provider_login: "The name is set by your login provider and can thus not be changed."
unlock: "Unlock"
unlock_and_reset_failed_logins: "Unlock and reset failed logins"
version_status_closed: "closed"
version_status_locked: "locked"
version_status_open: "open"
note: Note
note_password_login_disabled: "Password login has been disabled by %{configuration}."
warning: Warning
warning_attachments_not_saved: "%{count} file(s) could not be saved."
warning_imminent_user_limit: >
You invited more users than are supported by your current plan.
Invited users may not be able to join your OpenProject environment.
Please <a href="%{upgrade_url}">upgrade your plan</a> or block existing
users in order to allow invited and registered users to join.
warning_registration_token_expired: |
The activation email has expired. We sent you a new one to %{email}.
Please click the link inside of it to activate your account.
warning_user_limit_reached: >
User limit reached. You cannot activate any more users.
Please <a href="%{upgrade_url}">upgrade your plan</a> or block members to allow for additional users.
warning_user_limit_reached_instructions: >
You reached your user limit (%{current}/%{max} active users).
Please contact sales@openproject.com to upgrade your Enterprise Edition plan and add additional users.
warning_protocol_mismatch_html: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request
is an <code>%{actual_protocol}</code> request.
This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request
is a <code>%{actual_hostname}</code> hostname.
This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "Menu item"
menu_item_setting: "Visibility"
wiki_menu_item_for: "Menu item for wikipage \"%{title}\""
wiki_menu_item_setting: "Visibility"
wiki_menu_item_new_main_item_explanation: >
You are deleting the only main wiki menu item. You now have to choose a wiki page for which a new main item will be generated.
To delete the wiki the wiki module can be deactivated by project administrators.
wiki_menu_item_delete_not_permitted: The wiki menu item of the only wiki page cannot be deleted.
query_menu_item_for: "Menu item for query \"%{title}\""
# TODO: merge with work_packages top level key
work_package:
updated_automatically_by_child_changes: |
_Updated automatically by changing values within child work package %{child}_
destroy:
info: "Deleting the work package is an irreversible action."
title: "Delete the work package"
nothing_to_preview: "Nothing to preview"
api_v3:
attributes:
lock_version: "Lock Version"
errors:
code_400: "Bad request: %{message}"
code_401: "You need to be authenticated to access this resource."
code_401_wrong_credentials: "You did not provide the correct credentials."
code_403: "You are not authorized to access this resource."
code_404: "The requested resource could not be found."
6 years ago
code_409: "Could not update the resource because of conflicting modifications."
code_429: "Too many requests. Please try again later."
code_500: "An internal error has occurred."
expected:
date: "YYYY-MM-DD (ISO 8601 date only)"
duration: "ISO 8601 duration"
invalid_content_type: "Expected CONTENT-TYPE to be '%{content_type}' but got '%{actual}'."
invalid_format: "Invalid format for property '%{property}': Expected format like '%{expected_format}', but got '%{actual}'."
invalid_json: "The request could not be parsed as JSON."
invalid_relation: "The relation is invalid."
invalid_resource: "For property '%{property}' a link like '%{expected}' is expected, but got '%{actual}'."
invalid_signal:
embed: "The requested embedding of %{invalid} is not supported. Supported embeddings are %{supported}."
select: "The requested select of %{invalid} is not supported. Supported selects are %{supported}."
invalid_user_status_transition: "The current user account status does not allow this operation."
missing_content_type: "not specified"
missing_request_body: "There was no request body."
missing_or_malformed_parameter: "The query parameter '%{parameter}' is missing or malformed."
multipart_body_error: "The request body did not contain the expected multipart parts."
multiple_errors: "Multiple field constraints have been violated."
unable_to_create_attachment: "The attachment could not be created"
unable_to_create_attachment_permissions: "The attachment could not be saved due to lacking file system permissions"
render:
context_not_parsable: "The context provided is not a link to a resource."
unsupported_context: "The resource given is not supported as context."
context_object_not_found: "Cannot find the resource given as the context."
validation:
done_ratio: "Done ratio cannot be set on parent work packages, when it is inferred by status or when it is disabled."
due_date: "Finish date cannot be set on parent work packages."
estimated_hours: "Estimated hours cannot be set on parent work packages."
invalid_user_assigned_to_work_package: "The chosen user is not allowed to be '%{property}' for this work package."
start_date: "Start date cannot be set on parent work packages."
eprops:
invalid_gzip: "is invalid gzip: %{message}"
invalid_json: "is invalid json: %{message}"
resources:
schema: 'Schema'
undisclosed:
parent: Undisclosed - The selected parent is invisible because of lacking permissions.
doorkeeper:
pre_authorization:
status: 'Pre-authorization'
auth_url: 'Auth URL'
access_token_url: 'Access token URL'
errors:
messages:
# Common error messages
invalid_request: 'The request is missing a required parameter, includes an unsupported parameter value, or is otherwise malformed.'
invalid_redirect_uri: "The requested redirect URI is malformed or doesn't match client redirect URI."
unauthorized_client: 'The client is not authorized to perform this request using this method.'
access_denied: 'The resource owner or authorization server denied the request.'
invalid_scope: 'The requested scope is invalid, unknown, or malformed.'
invalid_code_challenge_method: 'The code challenge method must be plain or S256.'
server_error: 'The authorization server encountered an unexpected condition which prevented it from fulfilling the request.'
temporarily_unavailable: 'The authorization server is currently unable to handle the request due to a temporary overloading or maintenance of the server.'
# Configuration error messages
credential_flow_not_configured: 'Resource Owner Password Credentials flow failed due to Doorkeeper.configure.resource_owner_from_credentials being unconfigured.'
resource_owner_authenticator_not_configured: 'Resource Owner find failed due to Doorkeeper.configure.resource_owner_authenticator being unconfigured.'
admin_authenticator_not_configured: 'Access to admin panel is forbidden due to Doorkeeper.configure.admin_authenticator being unconfigured.'
# Access grant errors
unsupported_response_type: 'The authorization server does not support this response type.'
# Access token errors
invalid_client: 'Client authentication failed due to unknown client, no client authentication included, or unsupported authentication method.'
invalid_grant: 'The provided authorization grant is invalid, expired, revoked, does not match the redirection URI used in the authorization request, or was issued to another client.'
unsupported_grant_type: 'The authorization grant type is not supported by the authorization server.'
invalid_token:
revoked: "The access token was revoked"
expired: "The access token expired"
unknown: "The access token is invalid"
unsupported_browser:
title: "Your browser is outdated and unsupported."
message: "You may run into errors and degraded experience on this page."
update_message: 'Please update your browser.'
close_warning: "Ignore this warning."
oauth:
application:
singular: "OAuth application"
plural: "OAuth applications"
named: "OAuth application '%{name}'"
new: "New OAuth application"
default_scopes: "(Default scopes)"
instructions:
name: "The name of your application. This will be displayed to other users upon authorization."
redirect_uri_html: >
The allowed URLs authorized users can be redirected to. One entry per line.
<br/>
If you're registering a desktop application, use the following URL.
confidential: "Check if the application will be used where the client secret can be kept confidential. Native mobile apps and Single Page Apps are assumed non-confidential."
scopes: "Check the scopes you want the application to grant access to. If no scope is checked, api_v3 is assumed."
client_credential_user_id: "Optional user ID to impersonate when clients use this application. Leave empty to allow public access only"
register_intro: "If you are developing an OAuth API client application for OpenProject, you can register it using this form for all users to use."
default_scopes: ""
client_id: "Client ID"
client_secret_notice: >
This is the only time we can print the client secret, please note it down and keep it secure.
It should be treated as a password and cannot be retrieved by OpenProject at a later time.
authorization_dialog:
authorize: "Authorize"
cancel: "Cancel and deny authorization."
prompt_html: "Authorize <strong>%{application_name}</strong> to use your account <em>%{login}</em>?"
title: "Authorize %{application_name}"
wants_to_access_html: >
This application requests access to your OpenProject account.
<br/>
<strong>It has requested the following permissions:</strong>
scopes:
api_v3: "Full API v3 access"
api_v3_text: "Application will receive full read & write access to the OpenProject API v3 to perform actions on your behalf."
grants:
created_date: "Approved on"
scopes: "Permissions"
successful_application_revocation: "Revocation of application %{application_name} successful."
none_given: "No OAuth applications have been granted access to your user account."
x_active_tokens:
one: 'one active token'
other: '%{count} active token'
flows:
authorization_code: "Authorization code flow"
client_credentials: "Client credentials flow"
client_credentials: "User used for Client credentials"
client_credentials_impersonation_set_to: "Client credentials user set to"
client_credentials_impersonation_warning: "Note: Clients using the 'Client credentials' flow in this application will have the rights of this user"
client_credentials_impersonation_html: >
By default, OpenProject provides OAuth 2.0 authorization via %{authorization_code_flow_link}.
You can optionally enable %{client_credentials_flow_link}, but you must provide a user on whose behalf requests will be performed.
authorization_error: "An authorization error has occurred."
revoke_my_application_confirmation: "Do you really want to remove this application? This will revoke %{token_count} active for it."
my_registered_applications: "Registered OAuth applications"
you: you