Merge branch 'release/12.2' into dev

pull/11146/head
ulferts 2 years ago
commit 93e77e7a6f
No known key found for this signature in database
GPG Key ID: A205708DE1284017
  1. 27
      app/mailers/user_mailer.rb
  2. 23
      app/models/mail_handler.rb
  3. 2
      app/views/user_mailer/incoming_email_error.html.erb
  4. 2
      app/views/user_mailer/incoming_email_error.text.erb
  5. 19
      db/migrate/20220811061024_rename_work_package_export_limit.rb
  6. 6
      docs/bim-guide/README.md
  7. 8
      docs/bim-guide/ifc-viewer/README.md
  8. 10
      docs/bim-guide/revit-add-in/README.md
  9. 20
      docs/development/concepts/README.md
  10. 2
      docs/development/submit-feature-idea/README.md
  11. 30
      docs/enterprise-guide/README.md
  12. 24
      docs/enterprise-guide/enterprise-cloud-guide/README.md
  13. 22
      docs/faq/README.md
  14. 20
      docs/getting-started/README.md
  15. 6
      docs/getting-started/boards-introduction/README.md
  16. 8
      docs/getting-started/gantt-chart-introduction/README.md
  17. 6
      docs/getting-started/my-page/README.md
  18. 14
      docs/getting-started/sign-in-registration/README.md
  19. 12
      docs/getting-started/work-packages-introduction/README.md
  20. 2
      docs/installation-and-operations/operation/faq/README.md
  21. 2
      docs/release-notes/10/10-4-0/README.md
  22. 10
      docs/system-admin-guide/README.md
  23. 18
      docs/system-admin-guide/authentication/README.md
  24. 12
      docs/system-admin-guide/incoming-and-outgoing/README.md
  25. 16
      docs/system-admin-guide/system-settings/README.md
  26. 43
      docs/user-guide/README.md
  27. 2
      docs/user-guide/activity/README.md
  28. 12
      docs/user-guide/backlogs-scrum/README.md
  29. 20
      docs/user-guide/backlogs-scrum/work-with-backlogs/README.md
  30. 16
      docs/user-guide/budgets/README.md
  31. 22
      docs/user-guide/forums/README.md
  32. 26
      docs/user-guide/gantt-chart/README.md
  33. 16
      docs/user-guide/meetings/README.md
  34. 16
      docs/user-guide/members/README.md
  35. 12
      docs/user-guide/news/README.md
  36. BIN
      docs/user-guide/nextcloud-integration/NC_0_00-FileNoRelation.png
  37. BIN
      docs/user-guide/nextcloud-integration/NC_0_01-FileRelationSearch.png
  38. BIN
      docs/user-guide/nextcloud-integration/NC_1_00-FileWPRelation.png
  39. BIN
      docs/user-guide/nextcloud-integration/NC_1_01-FileWPActions.png
  40. BIN
      docs/user-guide/nextcloud-integration/Nextcloud_connected_account.png
  41. BIN
      docs/user-guide/nextcloud-integration/Nextcloud_open_file_details.png
  42. 41
      docs/user-guide/nextcloud-integration/README.md
  43. 34
      docs/user-guide/projects/README.md
  44. 16
      docs/user-guide/team-planner/README.md
  45. 10
      docs/user-guide/time-and-costs/README.md
  46. 10
      docs/user-guide/time-and-costs/cost-tracking/README.md
  47. 6
      docs/user-guide/time-and-costs/progress-tracking/README.md
  48. 16
      docs/user-guide/time-and-costs/reporting/README.md
  49. 20
      docs/user-guide/time-and-costs/time-tracking/README.md
  50. 12
      docs/user-guide/wiki/create-edit-wiki/README.md
  51. 4
      docs/user-guide/wiki/wiki-faq/README.md
  52. 2
      docs/user-guide/work-packages/copy-move-delete/README.md
  53. 12
      docs/user-guide/work-packages/create-work-package/README.md
  54. 22
      docs/user-guide/work-packages/edit-work-package/README.md
  55. 2
      docs/user-guide/work-packages/work-package-relations-hierarchies/README.md
  56. 18
      docs/user-guide/work-packages/work-package-table-configuration/README.md
  57. 14
      docs/user-guide/wysiwyg/README.md
  58. 2
      frontend/src/app/features/work-packages/components/filters/filter-searchable-multiselect-value/filter-searchable-multiselect-value.component.html
  59. 5
      frontend/src/app/features/work-packages/components/filters/filter-searchable-multiselect-value/filter-searchable-multiselect-value.component.ts
  60. 6
      frontend/src/app/features/work-packages/components/wp-single-view-tabs/activity-panel/activity-base.controller.ts
  61. 1
      frontend/src/app/shared/components/autocompleter/op-autocompleter/op-autocompleter.component.html
  62. 5
      frontend/src/app/shared/components/autocompleter/op-autocompleter/op-autocompleter.component.ts
  63. 3
      modules/costs/lib/api/v3/time_entries/available_work_packages_on_create_api.rb
  64. 2
      modules/my_page/spec/features/my/time_entries_current_user_spec.rb
  65. 39
      modules/webhooks/app/workers/cleanup_webhook_logs_job.rb
  66. 2
      modules/webhooks/config/locales/en.yml
  67. 2
      modules/webhooks/lib/open_project/webhooks/engine.rb
  68. 33
      spec/features/work_packages/table/queries/filter_spec.rb
  69. 16
      spec/mailers/user_mailer_spec.rb
  70. 2
      spec/models/mail_handler_spec.rb
  71. 23
      spec/support/components/work_packages/filters.rb

@ -229,35 +229,24 @@ class UserMailer < ApplicationMailer
# a work package, or forum message for instance.
#
# @param [User] user User who sent the email
# @param [Mail] mail Sent email
# @param [Array<String>] List of logs collected during processing of the email
# @param [Object] mail The mail object prepared by the mail handler
# @param [Array<String>] logs List of logs collected during processing of the email
def incoming_email_error(user, mail, logs)
@user = user
@mail = mail
@logs = logs
@mail_from = mail[:from]
@received_at = DateTime.now
@incoming_text = incoming_email_text mail
@quote = incoming_email_quote mail
@incoming_text = mail[:text]
@quote = mail[:quote]
headers['References'] = ["<#{mail.message_id}>"]
headers['In-Reply-To'] = ["<#{mail.message_id}>"]
headers['References'] = ["<#{mail[:message_id]}>"]
headers['In-Reply-To'] = ["<#{mail[:message_id]}>"]
send_mail user, mail.subject.present? ? "Re: #{mail.subject}" : I18n.t("mail_subject_incoming_email_error")
send_mail user, mail[:subject].present? ? "Re: #{mail[:subject]}" : I18n.t("mail_subject_incoming_email_error")
end
private
def incoming_email_text(mail)
mail.text_part.present? ? mail.text_part.body.to_s : mail.body.to_s
end
def incoming_email_quote(mail)
quote = incoming_email_text(mail)
quoted = String(quote).lines.join("> ")
"> #{quoted}"
end
def open_project_wiki_headers(wiki_content)
open_project_headers 'Project' => wiki_content.project.identifier,
'Wiki-Page-Id' => wiki_content.page.id,

@ -613,7 +613,28 @@ class MailHandler < ActionMailer::Base
def report_errors
return if logs.empty?
UserMailer.incoming_email_error(user, email, logs).deliver_later
UserMailer.incoming_email_error(user, mail_as_hash(email), logs).deliver_later
end
def mail_as_hash(email)
{
message_id: email.message_id,
subject: email.subject,
from: email.from&.first || '(unknown from address)',
quote: incoming_email_quote(email),
text: incoming_email_text(email)
}
end
def incoming_email_text(mail)
mail.text_part.present? ? mail.text_part.body.to_s : mail.body.to_s
end
def incoming_email_quote(mail)
quote = incoming_email_text(mail)
quoted = String(quote).lines.join("> ")
"> #{quoted}"
end
def work_package_create_contract_class

@ -41,7 +41,7 @@ See COPYRIGHT and LICENSE files for more details.
<%= t(
:mail_body_incoming_email_error_in_reply_to,
received_at: format_time(@received_at),
from_email: @mail.from.first
from_email: @mail_from
)%>:
</p>

@ -36,7 +36,7 @@ See COPYRIGHT and LICENSE files for more details.
<%= t(
:mail_body_incoming_email_error_in_reply_to,
received_at: format_time(@received_at),
from_email: @mail.from.first
from_email: @mail_from
)%>:
<%= @quote %>

@ -0,0 +1,19 @@
class RenameWorkPackageExportLimit < ActiveRecord::Migration[7.0]
def up
if Setting.exists?(name: 'work_packages_projects_export_limit')
Setting
.where(name: 'work_packages_export_limit')
.delete_all
else
Setting
.where(name: 'work_packages_export_limit')
.update_all(name: 'work_packages_projects_export_limit')
end
end
def down
Setting
.where(name: 'work_packages_projects_export_limit')
.update_all(name: 'work_packages_export_limit')
end
end

@ -47,13 +47,13 @@ Details: [Revit Add-in](revit-add-in)
## How to get a free trial?
## How to get a free trial
You easily can start a new BIM trial on our [OpenProject BIM website](https://www.openproject.org/bim-project-management/). The have a look at the full description of how to start a new trial installation just follow the Link: [Create trial installation](../enterprise-guide/enterprise-cloud-guide/create-cloud-trial/).
## How to enable the BCF module?
## How to enable the BCF module
The BCF Module and the included IFC viewer can be enabled for every single project. Here you can find the description how to [enable a module](../user-guide/projects/project-settings/modules/) within your ***project settings***.
@ -123,7 +123,7 @@ Yes, we want to develop some other integrations to stay interoparable with other
### How to enable the BCF module?
### How to enable the BCF module
The BCF Module and the included IFC viewer can be enabled or disabled for every single project. Here you can find the description how to [enable a module](../user-guide/projects/project-settings/modules/) within the project settings.

@ -71,7 +71,7 @@ If there already exist a model in project, you don't have to open the "model man
## How to rotate the building model?
## How to rotate the building model
To rotate the IFC model you either left-click on the building viewer and ***rotate the building model by panning*** your cursor **or** use the ***View Cube*** in the right bottom corner for navigation.
@ -135,7 +135,7 @@ The first person perspective changes the way you ineract with the building model
## How to slice the building model?
## How to slice the building model
![Slice Building Model](slice-building-model.png)
@ -145,7 +145,7 @@ To have a deeper look within the building model you are able to slice the whole
## How to clear slices?
## How to clear slices
You are able to clear all slices by using the ***dropdown*** menu next to the "***scissors symbol***" within the ***IFC-Viewer-Toolbar***.
@ -159,7 +159,7 @@ You are able to clear all slices by using the ***dropdown*** menu next to the "*
## How to select elements?
## How to select elements
To select elements within the building model, you have to activate the selection mode by clicking on the highlighted toggle button placed in the ***IFC-Viewer toolbar***. After activating the selection mode you are able to select a single or multiple elements within the viewer by left click. Your individual selection won't be reset after leaving the selection mode. You are able to reset your current selection with the context menu (right click).

@ -29,7 +29,7 @@ If you can answer all questions with "yes" you are ready to start using our Revi
## How to install?
## How to install
@ -84,15 +84,15 @@ After you have downloaded the file, please run it to start the installation proc
## How to update from an earlier version?
## How to update from an earlier version
If you already have an earlier version installed, simply follow the same steps as for a new installation ([How to install?](#how-to-install)). The existing **OpenProject Revit AddIn** will be updated.
If you already have an earlier version installed, simply follow the same steps as for a new installation ([How to install](#how-to-install)). The existing **OpenProject Revit AddIn** will be updated.
## How to login?
## How to login
After Installing the OpenProject BIM AddIn you can find a new tab within the Revit taskbar named "OpenProject". To login you have to open the **settings** first.
@ -180,7 +180,7 @@ OpenProject BIM and Revit automatically synchronize all BIM work packages. You d
## How to uninstall the OpenProject Revit add-in?
## How to uninstall the OpenProject Revit add-in
To remove the **OpenProject Revit AddIn** remove the AddIn like any other AddIn from Revit. First close any running instance of Revit. Then you'll have to enter the directory `C:\ProgramData\Autodesk\Revit\Addins\<REVIT_VERSION>`. There you must delete the file `OpenProject.Revit.addin` and the folder `OpenProject.Revit`. After a restart of Revit, the **OpenProject Revit AddIn** is no longer available.

@ -12,17 +12,17 @@ This guide will introduce some concepts and give you a big picture of the develo
Please choose an area that you would like to read about:
| Topic | Content |
| ---------------------------------------------------- | :----------------------------------------------------------- |
| [Application architecture](application-architecture) | An introduction of the application architecture used at OpenProject. |
| [State management](state-management) | How does the frontend handle state and react to changes? |
| [HAL resources](hal-resources) | What are HAL resources and how are they used in the frontend? |
| [Permissions](permissions) | How are roles and permissions handled in OpenProject code ? |
| [Translations](translations) | How are translations used and built? |
| [Resource schemas](resource-schemas) | What is a schema and how is it tied to an editable resource? |
| [Resource changesets](resource-changesets) | How is change tracked to resources in the frontend and how to save the changes? |
| Topic | Content |
|------------------------------------------------------|:------------------------------------------------------------------------------|
| [Application architecture](application-architecture) | An introduction of the application architecture used at OpenProject. |
| [State management](state-management) | How does the frontend handle state and react to changes? |
| [HAL resources](hal-resources) | What are HAL resources and how are they used in the frontend? |
| [Permissions](permissions) | How are roles and permissions handled in OpenProject code? |
| [Translations](translations) | How are translations used and built? |
| [Resource schemas](resource-schemas) | What is a schema and how is it tied to an editable resource? |
| [Resource changesets](resource-changesets) | How is change tracked to resources in the frontend? How to save the changes. |
| [Inline editing](inline-editing) | How does inline editing and the edit field functionality work in OpenProject? |
| [Queries and QuerySpace](queries) | What is the Query API concept and how is it used in the frontend? |
| [Queries and QuerySpace](queries) | What is the Query API concept and how is it used in the frontend? |

@ -7,7 +7,7 @@ keywords: feature requests, ideas, open feature request
---
# Submit a feature idea
## How to submit a feature idea or request?
## How to submit a feature idea or request
1. Login to or register at the [OpenProject community platform](https://community.openproject.org/login). It's fast and free.
2. Use the search bar in the header navigation on top to look for similar feature requests. If there's one, please leave a comment or add additional information. Otherwise:

@ -19,25 +19,25 @@ Find a detailed feature comparison [here](https://www.openproject.org/pricing/#f
## Enterprise cloud
| Topic | Content |
| ------------------------------------------------------------ | :----------------------------------------------------------- |
| [Create free trial](./enterprise-cloud-guide/create-cloud-trial) | Learn more about how to create a free trial for the Enterprise cloud instance. |
| [Sign in](./enterprise-cloud-guide/sign-in/) | Sign in to your OpenProject Enterprise cloud edition. |
| [Create quote](./enterprise-cloud-guide/create-quote-cloud) | How to create a quote within your Enterprise cloud instance? |
| [Invoices and billing history](./enterprise-cloud-guide/invoices-and-billing-history) | How to see your payment history and download invoices? |
| [Manage your subscription](./enterprise-cloud-guide/manage-cloud-subscription) | How to change billing address, add or edit credit card details? |
| [Subscribe](./enterprise-cloud-guide/book-cloud) | How to book Enterprise cloud? |
| [Backups](./enterprise-cloud-guide/backups) | How do backups work in the cloud? |
| [Support](./enterprise-cloud-guide/support) | How to get support as Enterprise cloud user? |
| [GDPR](./enterprise-cloud-guide/gdpr-compliance) | Review and sign a Data Processing Agreement (DPA). |
| Topic | Content |
|---------------------------------------------------------------------------------------|:-------------------------------------------------------------------------------|
| [Create free trial](./enterprise-cloud-guide/create-cloud-trial) | Learn more about how to create a free trial for the Enterprise cloud instance. |
| [Sign in](./enterprise-cloud-guide/sign-in/) | Sign in to your OpenProject Enterprise cloud edition. |
| [Create quote](./enterprise-cloud-guide/create-quote-cloud) | How to create a quote within your Enterprise cloud instance. |
| [Invoices and billing history](./enterprise-cloud-guide/invoices-and-billing-history) | How to see your payment history and download invoices. |
| [Manage your subscription](./enterprise-cloud-guide/manage-cloud-subscription) | How to change billing address, add or edit credit card details. |
| [Subscribe](./enterprise-cloud-guide/book-cloud) | How to book Enterprise cloud. |
| [Backups](./enterprise-cloud-guide/backups) | How do backups work in the cloud. |
| [Support](./enterprise-cloud-guide/support) | How to get support as Enterprise cloud user. |
| [GDPR](./enterprise-cloud-guide/gdpr-compliance) | Review and sign a Data Processing Agreement (DPA). |
## Enterprise on-premises
| Topic | Content |
| ------------------------------------------------------------ | :----------------------------------------------------------- |
| [Enterprise on-premises trial](./enterprise-on-premises-guide/enterprise-on-premises-trial/) | Can I test the Enterprise on-premises edition for free? |
| Topic | Content |
|---------------------------------------------------------------------------------------------------|:-----------------------------------------------------------------------------|
| [Enterprise on-premises trial](./enterprise-on-premises-guide/enterprise-on-premises-trial/) | Can I test the Enterprise on-premises edition for free? |
| [Activate Enterprise on-premises](./enterprise-on-premises-guide/activate-enterprise-on-premises) | How can I upgrade my Community edition to an Enterprise on-premises edition? |
| [Support](./enterprise-on-premises-guide/support) | How can I get support or installation support? |
| [Support](./enterprise-on-premises-guide/support) | How can I get support or installation support? |

@ -16,18 +16,18 @@ Welcome to the OpenProject **Enterprise cloud guide**.
## Overview
| Topic | Content |
| ------------------------------------------------------------ | :----------------------------------------------------------- |
| [Create free trial](./create-cloud-trial) | Learn more about how to create a free trial for the Enterprise cloud instance. |
| [Sign in](./sign-in/) | Sign in to your OpenProject Enterprise cloud edition. |
| [Create quote](./create-quote-cloud) | How to create a quote within your Enterprise cloud instance? |
| [Invoices and billing history](./invoices-and-billing-history) | How to see your payment history and download invoices? |
| [Upgrade, downgrade or cancel subscription](./manage-cloud-subscription/#upgrade-or-downgrade-subscription) | How to upgrade your plan, downgrade or cancel your subscription for the Enterprise cloud edition? |
| [Manage your subscription](./manage-cloud-subscription) | How to change billing address and add or edit credit card details? |
| [Subscribe](./book-cloud) | How to book Enterprise cloud? |
| [Backups](./backups) | How do backups work in the cloud? |
| [Support](./support) | How to get support as Enterprise cloud user? |
| [GDPR and DPA](./gdpr-compliance) | Review and sign a Data Processing Agreement (DPA). |
| Topic | Content |
|-------------------------------------------------------------------------------------------------------------|:--------------------------------------------------------------------------------------------------|
| [Create free trial](./create-cloud-trial) | Learn more about how to create a free trial for the Enterprise cloud instance. |
| [Sign in](./sign-in/) | Sign in to your OpenProject Enterprise cloud edition. |
| [Create quote](./create-quote-cloud) | How to create a quote within your Enterprise cloud instance. |
| [Invoices and billing history](./invoices-and-billing-history) | How to see your payment history and download invoices. |
| [Upgrade, downgrade or cancel subscription](./manage-cloud-subscription/#upgrade-or-downgrade-subscription) | How to upgrade your plan, downgrade or cancel your subscription for the Enterprise cloud edition. |
| [Manage your subscription](./manage-cloud-subscription) | How to change billing address and add or edit credit card details. |
| [Subscribe](./book-cloud) | How to book Enterprise cloud. |
| [Backups](./backups) | How do backups work in the cloud? |
| [Support](./support) | How to get support as Enterprise cloud user. |
| [GDPR and DPA](./gdpr-compliance) | Review and sign a Data Processing Agreement (DPA). |
The OpenProject Enterprise cloud edition contains all OpenProject Community features plus the additional OpenProject premium features, as well as professional support.

@ -9,15 +9,15 @@ keywords: FAQ, introduction, tutorial, project management software, frequently a
Welcome to the central overview of frequently asked questions for OpenProject.
| Topic | Content |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
| [Learn more about OpenProject](#learn-more-about-openproject) | General questions about OpenProject, security, setup and much more |
| [How to ... in OpenProject?](#how-to--in-openproject) | Questions about how to achieve certain outcomes in OpenProject that do not fit elsewhere |
| [FAQ regarding features](#faq-regarding-features) | Information about frequent feature requests |
| [FAQ regarding OpenProject BIM edition](#faq-regarding-openproject-bim-edition) | Questions concerning the additional BCF module for OpenProject and the BIM edition |
| [Migration](#migration) | Questions regarding migrating to OpenProject from e.g. Bitnami or from other OpenProject versions |
| [Other](#other) | Additional questions, e.g. about contribution, training, support |
| [Topic-specific FAQ](#topic-specific-faq) | Links to other FAQ sections |
| Topic | Content |
|---------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------|
| [Learn more about OpenProject](#learn-more-about-openproject) | General questions about OpenProject, security, setup and much more |
| [How to ... in OpenProject](#how-to--in-openproject) | Questions about how to achieve certain outcomes in OpenProject that do not fit elsewhere |
| [FAQ regarding features](#faq-regarding-features) | Information about frequent feature requests |
| [FAQ regarding OpenProject BIM edition](#faq-regarding-openproject-bim-edition) | Questions concerning the additional BCF module for OpenProject and the BIM edition |
| [Migration](#migration) | Questions regarding migrating to OpenProject from e.g. Bitnami or from other OpenProject versions |
| [Other](#other) | Additional questions, e.g. about contribution, training, support |
| [Topic-specific FAQ](#topic-specific-faq) | Links to other FAQ sections |
## Learn more about OpenProject
@ -40,7 +40,7 @@ The system requirements can be found [here](../installation-and-operations/syste
Apart from using OpenProject in the cloud (OpenProject Enterprise cloud) OpenProject can be installed in two different ways: The packaged installation of OpenProject is the recommended way to install and maintain OpenProject using DEB or RPM packages. There's also a Docker based installation option.
### How can I learn more about OpenProject and how to use it?
### How can I learn more about OpenProject?
Here are resources to get to know OpenProject:
@ -85,7 +85,7 @@ However, if you're still using an old OpenProject subscription there may be limi
In the Community Edition and in the Enterprise on-premises edition you can use the standard LDAP authentication. However, the Enterprise on-premises edition also includes LDAP group synchronization. This allows you to synchronize group members from LDAP with groups in OpenProject. The respective documentation can be found [here](../system-admin-guide/authentication/ldap-authentication/ldap-group-synchronization/#synchronize-ldap-and-openproject-groups-premium-feature).
## How to ... in OpenProject?
## How to ... in OpenProject
Most of this kind of questions will be answered in the respective sections for each topic (see links below). However, there may be some FAQ that do not really fit elsewhere:

@ -14,17 +14,17 @@ Here you will learn about the **first steps with OpenProject**. If you need more
## Overview
| Topic | Content |
| ------------------------------------------------------- | :----------------------------------------------------------- |
| Topic | Content |
|---------------------------------------------------------|:---------------------------------------------------------------|
| [Introduction to OpenProject](openproject-introduction) | Get an introduction about project management with OpenProject. |
| [Sign in and registration](sign-in-registration) | Find out how you can register and sign in to OpenProject. |
| [Create a project](projects) | How to create and set up a new project? |
| [Invite team members](invite-members) | How to invite new members? |
| [Work packages](work-packages-introduction) | Learn how to create and edit work packages. |
| [Gantt chart](gantt-chart-introduction) | Find out how to create a project plan. |
| [Boards](boards-introduction) | How to work with agile boards? |
| [My account](my-account) | How to configure my account? |
| [My page](my-page) | Find out more about a personal my page dashboard. |
| [Sign in and registration](sign-in-registration) | Find out how you can register and sign in to OpenProject. |
| [Create a project](projects) | How to create and set up a new project. |
| [Invite team members](invite-members) | How to invite new members. |
| [Work packages](work-packages-introduction) | Learn how to create and edit work packages. |
| [Gantt chart](gantt-chart-introduction) | Find out how to create a project plan. |
| [Boards](boards-introduction) | How to work with agile boards. |
| [My account](my-account) | How to configure my account. |
| [My page](my-page) | Find out more about a personal my page dashboard. |
## 6 steps to get started

@ -24,9 +24,9 @@ Agile boards is only one of OpenProject's features. Find a comprehensive compari
| Topic | Content |
| ----------------------------------------------------------- | ------------------------------------------ |
| [What is a Board?](#what-is-a-board) | Find out what a Board in OpenProject is. |
| [Manage your work in a Board](#manage-your-work-in-a-board) | How to manage your work in an agile Board? |
|-------------------------------------------------------------|--------------------------------------------|
| [What is a Board?](#what-is-a-board) | Find out what a Board in OpenProject is. |
| [Manage your work in a Board](#manage-your-work-in-a-board) | How to manage your work in an agile Board. |
<video src="https://openproject-docs.s3.eu-central-1.amazonaws.com/videos/OpenProject-Agile-Boards.mp4" type="video/mp4" controls="" style="width:100%"></video>

@ -17,11 +17,11 @@ In this document you will get a first introduction to the Gantt charts in OpenPr
To find out more about the functionalities for Gantt charts, please visit our [user guide for Gantt charts](../../user-guide/gantt-chart).
| Feature | Documentation for |
| ---------------------------------------------------------- | ---------------------------------------------------- |
|------------------------------------------------------------|------------------------------------------------------|
| [What is a Gantt chart?](#what-is-a-gantt-chart) | Find out what is a Gantt chart in OpenProject. |
| [Activate the Gantt chart](#activate-the-gantt-chart-view) | How to activate the Gantt chart view in OpenProject? |
| [Create a project plan](#create-a-project-plan) | How to create a project plan with the Gantt charts? |
| [Edit a project plan](#edit-a-project-plan) | How to edit a project plan in OpenProject? |
| [Activate the Gantt chart](#activate-the-gantt-chart-view) | How to activate the Gantt chart view in OpenProject. |
| [Create a project plan](#create-a-project-plan) | How to create a project plan with the Gantt charts. |
| [Edit a project plan](#edit-a-project-plan) | How to edit a project plan in OpenProject. |
<video src="https://openproject-docs.s3.eu-central-1.amazonaws.com/videos/OpenProject-Project-Plan-and-Timelines-Gantt-charts.mp4" type="video/mp4" controls="" style="width:100%"></video>

@ -11,10 +11,10 @@ keywords: my page, personal overview page, dashboard
The My Page is your **personal dashboard** with important overarching project information, such as work package reports, news, spent time, or a calendar. It can be configured to your specific needs.
| Topic | Content |
| ----------------------------------------------- | ------------------------------------------ |
|-------------------------------------------------|--------------------------------------------|
| [My Page introduction](#my-page-introduction) | What is My Page and what can I do with it? |
| [Configure the My Page](#configure-the-my-page) | How to add and edit widgets on My Page? |
| [My spent time widget](#my-spent-time-widget) | How to track spent time on My Page? |
| [Configure the My Page](#configure-the-my-page) | How to add and edit widgets on My Page. |
| [My spent time widget](#my-spent-time-widget) | How to track spent time on My Page. |
## My Page introduction

@ -13,14 +13,14 @@ Here you will get an overview how to sign in and register to an existing OpenPro
> **Note**: If you do not have an OpenProject installation yet, please visit our site on [how to create an OpenProject trial installation](../../enterprise-guide/enterprise-cloud-guide/create-cloud-trial/).
| Topic | Content |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
| [Sign in with an existing account](#sign-in-with-an-existing-account) | Sign in with an existing account to an OpenProject installation. |
| [Sign in with Google](#sign-in-with-a-google-account) | Find out how to sign in with a Google account. |
| Topic | Content |
|-------------------------------------------------------------------------------|--------------------------------------------------------------------|
| [Sign in with an existing account](#sign-in-with-an-existing-account) | Sign in with an existing account to an OpenProject installation. |
| [Sign in with Google](#sign-in-with-a-google-account) | Find out how to sign in with a Google account. |
| [Sign in from the OpenProject website](#sign-in-from-the-openproject-website) | Sign in to an existing OpenProject Cloud Edition from the website. |
| [Create a new account](#create-a-new-account) | Create a new account for OpenProject. |
| [Choose your language](#choose-your-language) | How to select your language in OpenProject? |
| [Reset your password](#reset-your-password) | If you forgot your password find out how to reset it. |
| [Create a new account](#create-a-new-account) | Create a new account for OpenProject. |
| [Choose your language](#choose-your-language) | How to select your language in OpenProject. |
| [Reset your password](#reset-your-password) | If you forgot your password find out how to reset it. |
<video src="https://openproject-docs.s3.eu-central-1.amazonaws.com/videos/OpenProject-Sign-in-and-Registration-2.mp4" type="video/mp4" controls="" style="width:100%"></video>

@ -12,12 +12,12 @@ In this document you will get a first introduction to work packages. You will fi
For further documentation, please visit our [user guide for work packages](../../user-guide/work-packages).
| Topic | Content |
| ------------------------------------------------------------ | --------------------------------------------------------- |
| [What is a work package?](#what-is-a-work-package) | Find out what a work package in OpenProject is. |
| [Create a new work package](#create-a-new-work-package) | How to create a new work package in a project? |
| [Open and edit a work package](#open-and-edit-a-work-package) | How to open and make changes to an existing work package? |
| [Activity of work packages](#activity-of-work-packages) | See all changes in a work package. |
| Topic | Content |
|---------------------------------------------------------------|-----------------------------------------------------------|
| [What is a work package?](#what-is-a-work-package) | Find out what a work package in OpenProject is. |
| [Create a new work package](#create-a-new-work-package) | How to create a new work package in a project. |
| [Open and edit a work package](#open-and-edit-a-work-package) | How to open and make changes to an existing work package. |
| [Activity of work packages](#activity-of-work-packages) | See all changes in a work package. |
<video src="https://openproject-docs.s3.eu-central-1.amazonaws.com/videos/OpenProject-Work-Packages.mp4" type="video/mp4" controls="" style="width:100%"></video>

@ -52,7 +52,7 @@ A closer look at the available branches:
* [release/11.0](https://packager.io/gh/opf/openproject/refs/release/10.0): Regular (usually daily) release builds for the current next patch release (or for the first release in this version, such as 11.0.0). This will contain early bugfixes before they are being release into stable. **Do not use in production**. But, for upgrading to the next major version, this can be regarded as a _release candidate channel_ that you can use to test your upgrade on a copy of your production environment.
* [dev](https://packager.io/gh/opf/openproject/refs/dev): Daily builds of the current development build of OpenProject. While we try to keep this operable, this may result in broken code and/or migrations from time to time. Use when you're interested what the next release of OpenProject will look like. **Do not use in production!**
## How to backup and restore my OpenProject installation?
## How can I backup and restore my OpenProject installation?
Please refer to the [backup documentation](../backing-up) for the packaged installation.

@ -195,7 +195,7 @@ Want to upgrade from a Community version to try out the light or dark theme? [Ge
## How to try the OpenProject BIM Edition?
## How to try the OpenProject BIM Edition
Try out OpenProject BIM 10.4. right away, create a free trial instance for the [OpenProject BIM Edition.](https://start.openproject.com/go/bim)

@ -23,16 +23,16 @@ Click on one of the categories in order to proceed with the configuration.
| Topic | Content |
|-----------------------------------------------------------------------------------|:-------------------------------------------------------------------------------------------------------------------------|
| [Users and permissions](./users-permissions) | How to manage users, groups and permissions in OpenProject? |
| [Work packages](./manage-work-packages) | How to configure work packages, types, status and workflows? |
| [Users and permissions](./users-permissions) | How to manage users, groups and permissions in OpenProject. |
| [Work packages](./manage-work-packages) | How to configure work packages, types, status and workflows. |
| [Custom fields](./custom-fields) | Set custom fields for work packages, Spent time, projects, versions, users, groups and more. |
| [Attribute help texts](./attribute-help-texts) | Add help texts to explain attributes (including custom fields) in projects and work packages. |
| [Enumerations](./enumerations) | Set enumerations, e.g. work package priorities, time tracking activities, document categories, and more. |
| [System settings](./system-settings) | Configure your system settings, e.g. a welcome text block on the landing page, display settings, repositories, and more. |
| [Incoming emails](./../installation-and-operations/configuration/incoming-emails) | Configure email settings in OpenProject. How to set up incoming email? |
| [Outbound emails](./../installation-and-operations/configuration/outbound-emails) | Configure email settings in OpenProject. How to configure email notifications and your email provider? |
| [Incoming emails](./../installation-and-operations/configuration/incoming-emails) | Configure email settings in OpenProject: How to set up incoming email. |
| [Outbound emails](./../installation-and-operations/configuration/outbound-emails) | Configure email settings in OpenProject: How to configure email notifications and your email provider. |
| [Authentication](./authentication) | Configure authentication methods in OpenProject, e.g. OAuth, OpenID, Two-factor-authentication, LDAP, and more. |
| [Announcement](./announcement) | How to create a system announcement? |
| [Announcement](./announcement) | How to create a system announcement. |
| [Design](./design) | Create your own design and make it compliant to your company's Corporate Identity, upload logo and customize colors. |
| [Colors](./colors) | Configure colors used in the system, e.g. status colors, work package types, priorities and more. |
| [Time and costs](./time-and-costs) | Configure your currency and create cost types in OpenProject. |

@ -13,13 +13,13 @@ Configure **authentication** settings and authentication providers in OpenProjec
## Overview
| Topic | Content |
| ------------------------------------------------------------ | :----------------------------------------------------------- |
| [Authentication settings](authentication-settings) | Configure general authentication settings, such as registration, passwords, and more. |
| [OAuth applications](oauth-applications) | How to configure OAuth applications in OpenProject? |
| [OpenID providers](openid-providers) | How to configure OpenID providers in OpenProject? |
| [Two-factor authentication](two-factor-authentication) | Set up and manage two-factor authentication (2FA) in OpenProject. |
| [reCAPTCHA](recaptcha) | How to activate reCAPTCHA in OpenProject? |
| [LDAP authentication](ldap-authentication) | How to set up LDAP authentication in OpenProject? |
| [LDAP group synchronization](ldap-authentication/ldap-group-synchronization) | How to configure LDAP group synchronization in OpenProject (Premium feature)? |
| Topic | Content |
|------------------------------------------------------------------------------|:--------------------------------------------------------------------------------------|
| [Authentication settings](authentication-settings) | Configure general authentication settings, such as registration, passwords, and more. |
| [OAuth applications](oauth-applications) | How to configure OAuth applications in OpenProject. |
| [OpenID providers](openid-providers) | How to configure OpenID providers in OpenProject. |
| [Two-factor authentication](two-factor-authentication) | Set up and manage two-factor authentication (2FA) in OpenProject. |
| [reCAPTCHA](recaptcha) | How to activate reCAPTCHA in OpenProject. |
| [LDAP authentication](ldap-authentication) | How to set up LDAP authentication in OpenProject. |
| [LDAP group synchronization](ldap-authentication/ldap-group-synchronization) | How to configure LDAP group synchronization in OpenProject. (Premium feature) |

@ -11,11 +11,11 @@ Configure **Emails and notification settings** in OpenProject, i.e. email notifi
Navigate to *Administration* -> *Emails and notification*.
| Topic | Content |
|-----------------------------------------------------------------------|------------------------------------------------------------|
| [Emails and notification settings](#emails-and-notification-settings) | How to configure the global incoming and outgoing settings |
| [Email notifications](#email-notifications-settings) | How to configure outgoing email notifications? |
| [Incoming emails](#incoming-emails-settings) | How to configure settings for inbound emails? |
| Topic | Content |
|-----------------------------------------------------------------------|-------------------------------------------------------------|
| [Emails and notification settings](#emails-and-notification-settings) | How to configure the global incoming and outgoing settings. |
| [Email notifications](#email-notifications-settings) | How to configure outgoing email notifications. |
| [Incoming emails](#incoming-emails-settings) | How to configure settings for inbound emails. |
## Emails and notification settings
@ -58,4 +58,4 @@ To adapt incoming email settings, go to *Administration* -> *Emails and notifica
**To set up incoming email**, please visit our [Operations guide](../../installation-and-operations/configuration/incoming-emails).
**To configure individual email reminders**, please visit our [User guide](../../getting-started/my-account/#email-reminders).
**To configure individual email reminders**, please visit our [User guide](../../getting-started/my-account/#email-reminders).

@ -15,12 +15,12 @@ There are various project overarching settings that are referred to as **system
## Overview
| Topic | Content |
| ------------------------------------------- | :----------------------------------------------------------- |
| [General settings](general-settings) | How to configure general system settings, e.g. a welcome text block on the application landing page, attachment size, and much more? |
| [Display settings](display-settings) | How to configure languages, date and time formats, week start, and more? |
| [Project settings](project-system-settings) | Settings for new projects. |
| [Attachments](attachments) | Settings for attachments. |
| [API](api-settings) | API settings (enable docs and CORS). |
| [Repositories](repositories) | How to integrate SVN or GIT repositories? |
| Topic | Content |
|---------------------------------------------|:-------------------------------------------------------------------------------------------------------------------------------------|
| [General settings](general-settings) | How to configure general system settings, e.g. a welcome text block on the application landing page, attachment size, and much more. |
| [Display settings](display-settings) | How to configure languages, date and time formats, week start, and more. |
| [Project settings](project-system-settings) | Settings for new projects. |
| [Attachments](attachments) | Settings for attachments. |
| [API](api-settings) | API settings (enable docs and CORS). |
| [Repositories](repositories) | How to integrate SVN or GIT repositories. |

@ -30,24 +30,25 @@ A module in OpenProject encapsulates a specific set of collaboration functionali
Please choose the module or topic you want to learn more about.
| Topic | Content |
| ------------------------------------------------------------ | :----------------------------------------------------------- |
| [Project overview page](project-overview) | How to create a project overview dashboard with important project information? |
| [Activity](activity) | How to find out about the latest activities in a project? |
| [Backlogs (Scrum)](backlogs-scrum) | How to manage a Scrum team in OpenProject with a product backlog and taskboard? |
| [Boards](agile-boards) | How to work with Agile boards for agile project management, e.g. Kanban? |
| [Budgets](budgets) | How to create and manage a project budget? |
| [Calendar](calendar) | How to display your work in a calendar in OpenProject? |
| [Documents](documents) | How to upload and share documents in OpenProject? |
| [Forums](forums) | How to manage forums to discuss and comment on topics? |
| [GitHub](../system-admin-guide/integrations/github-integration/) | How to manage GitHub integration? |
| [Meetings](meetings) | How to manage meetings to create and share meeting agenda and meeting minutes? |
| [News](news) | How to create and manage News for your projects? |
| [Team planner](team-planner) | How to use the team planner module? |
| [Time and costs](time-and-costs) | How to track time and costs in OpenProject and report spent time and costs? |
| [Roadmap](roadmap) | How to create a product roadmap with OpenProject? |
| [Wiki](wiki) | How to create and manage a wiki to collaboratively document and share information? |
| [Work packages](work-packages) | How to manage your work in a project? |
| [Gantt chart](gantt-chart) | How to create and manage a project plan in a Gantt chart? |
| [Members](members/) | How to manage Members in a project? |
| [Manage projects](projects) | Edit, create, copy, delete projects and change project settings. |
| Topic | Content |
|------------------------------------------------------------------|:-----------------------------------------------------------------------------------|
| [Project overview page](project-overview) | How to create a project overview dashboard with important project information. |
| [Activity](activity) | How to find out about the latest activities in a project. |
| [Backlogs (Scrum)](backlogs-scrum) | How to manage a Scrum team in OpenProject with a product backlog and taskboard. |
| [Boards](agile-boards) | How to work with Agile boards for agile project management, e.g. Kanban. |
| [Budgets](budgets) | How to create and manage a project budget. |
| [Calendar](calendar) | How to display your work in a calendar in OpenProject. |
| [Documents](documents) | How to upload and share documents in OpenProject. |
| [Forums](forums) | How to manage forums to discuss and comment on topics. |
| [GitHub](../system-admin-guide/integrations/github-integration/) | How to manage GitHub integration. |
| [Meetings](meetings) | How to manage meetings to create and share meeting agenda and meeting minutes. |
| [News](news) | How to create and manage News for your projects. |
| [Nextcloud integration](nextcloud-integration) | How to integrate OpenProject with Nextcloud. |
| [Team planner](team-planner) | How to use the team planner module. |
| [Time and costs](time-and-costs) | How to track time and costs in OpenProject and report spent time and costs. |
| [Roadmap](roadmap) | How to create a product roadmap with OpenProject. |
| [Wiki](wiki) | How to create and manage a wiki to collaboratively document and share information. |
| [Work packages](work-packages) | How to manage your work in a project. |
| [Gantt chart](gantt-chart) | How to create and manage a project plan in a Gantt chart. |
| [Members](members/) | How to manage Members in a project. |
| [Manage projects](projects) | Edit, create, copy, delete projects and change project settings. |

@ -28,7 +28,7 @@ Enable the **Activity** module and click the blue **Save** button.
![project-settings-modules](project-settings-modules.png)
### How to display the Activities of a project?
### How to display the Activities of a project
The Activities from a project are displayed in the Activity module.

@ -18,10 +18,10 @@ A **backlog** is defined as a plugin that allows to use the backlogs feature in
Please note that this user guide does not represent an introduction into scrum methodology, but merely explains the scrum-related functionalities and user instructions in OpenProject.
| Topic | Content |
| ------------------------------------------- | ------------------------------------------------------------ |
| [Working with backlogs](work-with-backlogs) | How to work with backlogs for Scrum projects in OpenProject? |
| [Manage sprints](manage-sprints) | How to set up the product backlog, bug backlog, and create a new sprint in the backlogs view? |
| [Task board view](taskboard) | How to work with the taskboard? |
| Topic | Content |
|---------------------------------------------|-----------------------------------------------------------------------------------------------|
| [Working with backlogs](work-with-backlogs) | How to work with backlogs for Scrum projects in OpenProject. |
| [Manage sprints](manage-sprints) | How to set up the product backlog, bug backlog, and create a new sprint in the backlogs view. |
| [Task board view](taskboard) | How to work with the taskboard. |
<video src="https://openproject-docs.s3.eu-central-1.amazonaws.com/videos/OpenProject-Agile-and-Scrum-Backlogs.mp4" type="video/mp4" controls="" style="width:100%"></video>
<video src="https://openproject-docs.s3.eu-central-1.amazonaws.com/videos/OpenProject-Agile-and-Scrum-Backlogs.mp4" type="video/mp4" controls="" style="width:100%"></video>

@ -12,16 +12,16 @@ The starting point for effective work in Scrum teams is a well-maintained and pr
Moreover, please note that the backlogs module is not available in the accessibility mode, since it uses drag&drop functionalities which are not accessible. If you use the accessibility mode you can however perform the same actions (like viewing and editing work packages such as user stories and epics) from the work package list view.
| Topic | Content |
| --------------------------------------------------- | ------------------------------------------------------------ |
| [Create a new backlog](#create-a-new-backlog) | How to create a new product backlog or sprint? |
| [Create a new user story](#create-a-new-user-story) | How to create a new user story, epic, bug in the backlogs view? |
| [Prioritize user stories](#prioritize-user-stories) | How to prioritize user stories in the backlogs view? |
| [Story points](#working-with-story-points) | Estimate user stories and document story points. |
| [Sprint duration](#editing-sprint-duration) | How to edit sprint duration? |
| [Burndown chart](#burndown-chart) | How to view the burndown chart? |
| [Print story cards](#print-story-cards) | How to print story cards for a physical task board? |
| [Sprint wiki](#sprint-wiki) | How to create a sprint wiki to document sprint information? |
| Topic | Content |
|-----------------------------------------------------|-----------------------------------------------------------------|
| [Create a new backlog](#create-a-new-backlog) | How to create a new product backlog or sprint. |
| [Create a new user story](#create-a-new-user-story) | How to create a new user story, epic, bug in the backlogs view. |
| [Prioritize user stories](#prioritize-user-stories) | How to prioritize user stories in the backlogs view. |
| [Story points](#working-with-story-points) | Estimate user stories and document story points. |
| [Sprint duration](#editing-sprint-duration) | How to edit sprint duration. |
| [Burndown chart](#burndown-chart) | How to view the burndown chart. |
| [Print story cards](#print-story-cards) | How to print story cards for a physical task board. |
| [Sprint wiki](#sprint-wiki) | How to create a sprint wiki to document sprint information. |
## Create a new backlog

@ -14,14 +14,14 @@ You can add planned **unit costs** as well as **labor costs** for the project.
Then, you will assign work packages to a budgets. If you log time or costs to this work package the costs will booked to this budget and show the percentage spent for a project budget.
| Topic | Content |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
| [Create a project budget](#create-a-project-budget) | How to set up a project budget in OpenProject? |
| [Add planned unit costs](#add-planned-unit-costs) | How to add planned unit costs to a budget? |
| [Add planned labor costs](#add-planned-labor-costs) | How to add planned labor costs to a budget? |
| [Assign a work package to a budget](#assign-a-work-package-to-a-budget) | How to assign a work package to book time and costs to a project budget? |
| [View details and update budget](#view-details-and-update-budget) | How to display the details, update, copy or delete a project budget? |
| [Frequently asked questions (FAQ)](#frequently-asked-questions-faq) | What are frequent questions regarding budgets? |
| Topic | Content |
|-------------------------------------------------------------------------|--------------------------------------------------------------------------|
| [Create a project budget](#create-a-project-budget) | How to set up a project budget in OpenProject. |
| [Add planned unit costs](#add-planned-unit-costs) | How to add planned unit costs to a budget. |
| [Add planned labor costs](#add-planned-labor-costs) | How to add planned labor costs to a budget. |
| [Assign a work package to a budget](#assign-a-work-package-to-a-budget) | How to assign a work package to book time and costs to a project budget. |
| [View details and update budget](#view-details-and-update-budget) | How to display the details, update, copy or delete a project budget. |
| [Frequently asked questions (FAQ)](#frequently-asked-questions-faq) | What are frequent questions regarding budgets? |
## Create a project budget

@ -14,16 +14,16 @@ In the forum in OpenProject you can discuss topics in a project with the team: p
**Forum** is defined as a module used to display forums and forum entries. The module has to be activated in the project settings and a forum has to be created in the forums tab in the project settings to be displayed in the side navigation.
</div>
| Topic | Content |
| -------------------------------------------------------- | ------------------------------------------------------------ |
| [Open a forum](#open-a-forum) | How to open an existing forum? |
| [Create a new message](#create-a-new-message-in-a-forum) | How to create a new message in a forum? |
| [Reply to a message](#reply-to-a-forum-message) | How to add a reply to an existing forum message? |
| [Watch a forum](#watch-a-forum) | How to keep informed about changes in a forum, e.g. new messages or replies? |
| [Edit a forum message](#edit-a-forum-message) | How to edit a message in a forum? |
| [Delete a forum message](#delete-a-forum-message) | How to delete a message within a forum? |
| [Create a new forum](#create-a-new-forum) | How to create a new forum? |
| [Manage forums](#manage-forums) | How to sort, edit or delete a forum? |
| Topic | Content |
|----------------------------------------------------------|------------------------------------------------------------------------------|
| [Open a forum](#open-a-forum) | How to open an existing forum. |
| [Create a new message](#create-a-new-message-in-a-forum) | How to create a new message in a forum. |
| [Reply to a message](#reply-to-a-forum-message) | How to add a reply to an existing forum message. |
| [Watch a forum](#watch-a-forum) | How to keep informed about changes in a forum, e.g. new messages or replies. |
| [Edit a forum message](#edit-a-forum-message) | How to edit a message in a forum. |
| [Delete a forum message](#delete-a-forum-message) | How to delete a message within a forum. |
| [Create a new forum](#create-a-new-forum) | How to create a new forum. |
| [Manage forums](#manage-forums) | How to sort, edit or delete a forum. |
## Open a forum
@ -145,4 +145,4 @@ If you want to change the order of the forums in your project, want to edit a fo
2. Click the **edit icon to change the name or description** of your form.
3. Click the delete icon to **delete a forum** from your project.
![User-guide-manage-forums](User-guide-manage-forums.png)
![User-guide-manage-forums](User-guide-manage-forums.png)

@ -12,16 +12,16 @@ keywords: gantt chart, timeline, project plan, gantchart
The **Gantt chart** in OpenProject displays the work packages in a timeline. You can collaboratively create and manage your project plan. Have your project timelines available for all team members and share up-to-date information with stakeholders. You can add start and finish dates and adapt it with drag and drop in the Gantt chart. Also, you can add dependencies, predecessor or follower within the Gantt chart.
</div>
| Topic | Content |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
| [Activate the Gantt chart](#activate-the-gantt-chart) | How to activate the Gantt chart in OpenProject? |
| [Create a new element](#create-a-new-element-in-the-gantt-chart) | How to add a new item to the Gantt chart? |
| [Relations in the Gantt chart](#relations-in-the-gantt-chart) | Create and display dependencies in the Gantt chart. |
| [Understanding the colors and lines in the Gantt chart](#understanding-the-colors-and-lines-in-the-gantt-chart) | What do the clamps, lines and symbols in the Gantt chart mean? |
| [Gantt chart configuration](#gantt-chart-configuration) | How to configure the view of your Gantt chart, e.g. add labels? |
| [Gantt chart views](#gantt-chart-views) | How to zoom in and out and activate the Zen mode? |
| [Multi project views](#multi-project-views) | Create project overarching timelines. |
| [Aggregation by project](#aggregation-by-project) | How to display an aggregated view of all milestones of multiple projects? |
| Topic | Content |
|-----------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------|
| [Activate the Gantt chart](#activate-the-gantt-chart) | How to activate the Gantt chart in OpenProject. |
| [Create a new element](#create-a-new-element-in-the-gantt-chart) | How to add a new item to the Gantt chart. |
| [Relations in the Gantt chart](#relations-in-the-gantt-chart) | Create and display dependencies in the Gantt chart. |
| [Understanding the colors and lines in the Gantt chart](#understanding-the-colors-and-lines-in-the-gantt-chart) | What do the clamps, lines and symbols in the Gantt chart mean? |
| [Gantt chart configuration](#gantt-chart-configuration) | How to configure the view of your Gantt chart, e.g. add labels. |
| [Gantt chart views](#gantt-chart-views) | How to zoom in and out and activate the Zen mode. |
| [Multi project views](#multi-project-views) | Create project overarching timelines. |
| [Aggregation by project](#aggregation-by-project) | How to display an aggregated view of all milestones of multiple projects. |
<video src="https://openproject-docs.s3.eu-central-1.amazonaws.com/videos/OpenProject-Project-Plan-and-Timelines-Gantt-charts.mp4" type="video/mp4" controls="" style="width:100%"></video>
@ -46,7 +46,7 @@ To **change the order of an item** in the Gantt chart, click the **drag and drop
![create-new-element-gantt-chart](create-new-element-gantt-chart.gif)
### How to change the duration of an element in the Gantt chart?
### How to change the duration of an element in the Gantt chart
To change the duration of a work package in the Gantt chart view, hover over the work package in the Gantt chart and use the little arrows on its ends to adjust the start date or finish date. This will shorten or prolong its duration.
To move a work package on the time line just click on it and drag and drop it to the desired point of time. This will change its start and finish date.
@ -95,7 +95,7 @@ Click the **Apply** button to save your changes.
![configure-gantt-chart](configure-gantt-chart.gif)
### How to export data from a Gantt diagram?
### How to export data from a Gantt diagram
To export the data from your Gantt chart there are several possibilities:
@ -103,7 +103,7 @@ To export the data from your Gantt chart there are several possibilities:
* [Print (e.g. to PDF)](#how-to-print-a-gantt-chart)
* [Synchronize data from OpenProject to Excel](../../system-admin-guide/integrations/excel-synchronization/) ←→ MS Project
### How to print a Gantt chart?
### How to print a Gantt chart
The Gantt chart can be printed via the browser's printing function. It is optimized for Chrome.

@ -16,14 +16,14 @@ Meetings in OpenProject allow you to manage and document your project meetings a
| Topic | Content |
| ------------------------------------------------------------ | ------------------------------------------- |
| [Meetings in OpenProject](#meetings-in-openproject) | How to open meetings in OpenProject? |
| [Create a new meeting](#create-a-new-meeting) | How to create a new meeting in OpenProject? |
| [Edit a meeting](#edit-a-meeting) | How to edit an existing meeting? |
| [Add meeting participants](#add-meeting-participants) | How to invite people to a meeting? |
| [Create or edit the meeting agenda](#create-or-edit-the-meeting-agenda) | How to create or edit the agenda? |
| [Copy a meeting (recurring meetings)](#copy-a-meeting-recurring-meetings) | How to create recurring meetings? |
| Topic | Content |
|---------------------------------------------------------------------------|---------------------------------------------|
| [Meetings in OpenProject](#meetings-in-openproject) | How to open meetings in OpenProject. |
| [Create a new meeting](#create-a-new-meeting) | How to create a new meeting in OpenProject. |
| [Edit a meeting](#edit-a-meeting) | How to edit an existing meeting. |
| [Add meeting participants](#add-meeting-participants) | How to invite people to a meeting. |
| [Create or edit the meeting agenda](#create-or-edit-the-meeting-agenda) | How to create or edit the agenda. |
| [Copy a meeting (recurring meetings)](#copy-a-meeting-recurring-meetings) | How to create recurring meetings. |
## Meetings in OpenProject

@ -8,13 +8,13 @@ keywords: members, project participants
# Manage members
| Topic | Content |
| ----------------------------------------------- | ------------------------------------------------------------ |
| [Add members](#add-members) | How to add existing members or invite new members to a project? |
| [Edit members](#edit-members) | How to change the role of a member in a project? |
| [Remove members](#remove-members) | How to remove members from a project? |
| [Roles and permissions](#roles-and-permissions) | How to manage roles and permissions for members? |
| [Groups](#groups) | How to add members to a group and add groups to a project? |
| Topic | Content |
|-------------------------------------------------|-----------------------------------------------------------------|
| [Add members](#add-members) | How to add existing members or invite new members to a project. |
| [Edit members](#edit-members) | How to change the role of a member in a project. |
| [Remove members](#remove-members) | How to remove members from a project. |
| [Roles and permissions](#roles-and-permissions) | How to manage roles and permissions for members. |
| [Groups](#groups) | How to add members to a group and add groups to a project. |
<video src="https://openproject-docs.s3.eu-central-1.amazonaws.com/videos/OpenProject-Invite-and-Manage-Members.mp4" type="video/mp4" controls="" style="width:100%"></video>
@ -54,4 +54,4 @@ To assign work packages to a project member, the respective user's or placeholde
## Groups
Users can be added to groups. A group can be added to a project. With this, all users within a group will have the corresponding role in this project.
Find out how to create and manage groups in OpenProject [here](../../system-admin-guide/users-permissions/groups).
Find out how to create and manage groups in OpenProject [here](../../system-admin-guide/users-permissions/groups).

@ -17,12 +17,12 @@ On the news page, you can see the latest news in a project in reverse chronologi
They can be displayed on the main project overview page.
| Feature | Documentation for |
| ------------------------------------------- | ------------------------------------------------- |
| [Comment on news](#comment-on-news) | How to comment news in a project? |
| [Watch news](#watch-a-news-entry) | How to add yourself as a watcher to a news entry? |
| [Edit a news entry](#edit-a-news-entry) | How to edit an existing news entry? |
| [Add a news entry](#add-a-news-entry) | How to create a new news entry? |
| [Delete a news entry](#delete-a-news-entry) | How to delete a news entry? |
|---------------------------------------------|---------------------------------------------------|
| [Comment on news](#comment-on-news) | How to comment news in a project. |
| [Watch news](#watch-a-news-entry) | How to add yourself as a watcher to a news entry. |
| [Edit a news entry](#edit-a-news-entry) | How to edit an existing news entry. |
| [Add a news entry](#add-a-news-entry) | How to create a new news entry. |
| [Delete a news entry](#delete-a-news-entry) | How to delete a news entry. |
## Comment on news

Binary file not shown.

After

Width:  |  Height:  |  Size: 124 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 143 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 136 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 137 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 110 KiB

After

Width:  |  Height:  |  Size: 171 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 263 KiB

@ -30,36 +30,47 @@ The integration enables you to perform multiple actions in both Nextcloud and Op
As a user of both Nextcloud and OpenProject, you can benefit from this integration in both platforms:
- **In OpenProject:**
In addition to listing files attached to a work package, the Files tab now also shows you Nextcloud files that are linked to the current work package. Secondary actions on each file allow you to directly **open or download the file, show the containing folder in Nextcloud or remove the link**.
In addition to listing files attached to a work package, the _Files_ tab now also shows you Nextcloud files that are linked to the current work package. Secondary actions on each file allow you to directly **open or download the file, show the containing folder in Nextcloud or remove the link**.
![Empty_status_files](1_0_00-No_files_linked.png)
![OP_linked_files](1_1_00-All_files_available.png)
> **Note:** In this version of the integration, you can only link files to work packages on Nextcloud; adding a new link to a Nextcloud file via the OpenProject interface is not yet possible, but will be possible in the near future.
- **In Nextcloud:**
You will be able to access the OpenProject tab in Nextcloud by accessing the details split screen of any file. In this tab, you will be able to search for the work package to which you would like to add a link. Once a work package is linked to a file, you can always unlink it by clicking on the **unlink** icon.
On the file or folder that you want to link to a work package click on the three dots and then click on _Details_.
![NC_open_file_details](Nextcloud_open_file_details.png)
In the _Details_ side panel, click on the the _OpenProject_ tab. This tab lets you link work packages in OpenProject to the current file, and will list all linked work packages. When nothing is yet linked, the list will be empty. To link the file to work package for the first time, use the search bar to search for the work packages in your OpenProject instance, and click on one to link it.
![NC_empty_status](NC_0_00-FileNoRelation.png)
![NC_search_WP](NC_0_01-FileRelationSearch.png)
![NC_search_WP](0_0_00-File_Relation_Search.png)
This linked file will then appear underneath the search bar, and will appear on the Files tab of the work package in OpenProject.
![NC_linked_WP](0_1_01-File_WP_Actions.png)
![NC_WP_relation](NC_1_00-FileWPRelation.png)
In addition to actions related to the file itself, you can also display the OpenProject widget on your Nextcloud dashboard in order to keep an eye on the the latest changes and updates to linked work packages:
Once a work package is linked to a file, you can always unlink it by clicking on the **unlink** icon.
![NC_unlink_WP](NC_1_01-FileWPActions.png)
In addition to actions related to individual files, can also choose to display the OpenProject widget on your Nextcloud dashboard in order to keep an eye on the the latest changes and updates to linked work packages:
![add_NC_widget](Add_OpenProject_widget.png)
![added_NC_widget](Nextcloud_dashboard.png)
Additionally, there are find three additional features related to the integration that you can enable in Nextcloud. In your personal settings page, under *Connected accounts* you will find these options:
Additionally, there are three additional features related to the integration that you can enable in Nextcloud. In your personal settings page, under *Connected accounts*, you will find these options:
- **Enable navigation link** displays a link to your OpenProject instance in the Nextcloud header
- **Enable unified search for tickets** allows you to access OpenProject work packages via the universal search bar
- **Enable notifications for activity in my work packages** sends you notifications when there are updates to linked OpenProject work packages
![NC_extra_settings](Nextcloud_connected_account.png)
![NC_extra_navlink](Navigation_link_OpenProject.png)
![NC_extra_search](Unified_search.png)
@ -69,16 +80,16 @@ Further integration efforts are under way. In the near future, you will be able
## Possible errors and troubleshooting
- **OpenProject - No permissions to see the file:** If you are unable to to see the details of a file or are unable to open some of the linked files due to issues with permissions, you will be able to see the name, time of last modification and the name of the modifier but you will not be able to perform any further actions. To open or access these files, you will need to contact your Nextcloud administrator or the creator of the file so that they can grant you the necessary permissions.
- **OpenProject - No permissions to see the file:** If you are unable to see the details of a file or are unable to open some of the linked files due to issues with permissions, you will be able to see the name, time of last modification and the name of the modifier but you will not be able to perform any further actions. To open or access these files, you will need to contact your Nextcloud administrator or the creator of the file so that they can grant you the necessary permissions.
![OP_no_permissions](1_1_01-Not_all_files_available.png)
- **OpenProject - User not logged in to Nextcloud:** You might see this error if you are not logged in to Nextcloud. You will still be able to see the list of linked files, but not perform any actions. Simply log in to your Nextcloud account to restore full functionality.
- **OpenProject - User not logged in to Nextcloud:** You might see this error if you are not logged in to Nextcloud. You will still be able to see the list of linked files, but not perform any actions. To remedy this, simply log in to your Nextcloud account to restore full functionality.
![OP_login_error](1_0_01-Log_in_error.png)
- **OpenProject - Connection error:** You will see this error when your OpenProject instance is unable to connect to your Nextcloud instance. In this case, you should contact the instance administrator to identify and to resolve the issue.
- **OpenProject - Connection error:** You will see this error when your OpenProject instance is unable to connect to your Nextcloud instance for any number of reasons. Your best course of action is to get in touch with the administrator of your OpenProject and Nextcloud instances to identify and to resolve the issue.
![OP_connection_error](1_0_02-Connection_broken.png)
- **OpenProject - File fetching error:** In rare ocassions, it is possible for the integration to not be able to fetch all the details of all linked files linked. A simple page refresh should solve the issue, but should the error persist, please contact your instance administrator.
- **OpenProject - File fetching error:** In rare ocassions, it is possible for the integration to not be able to fetch all the details of all linked files. A simple page refresh should solve the issue, but should the error persist, please contact administrator of your OpenProject and Nextcloud instances.
![OP_fetching_error](1_0_03-Fetching_error.png)

@ -11,23 +11,23 @@ In OpenProject you can create projects to collaborate with your team members, tr
Your projects can be available publicly or internally. OpenProject does not limit the number of projects, neither in the Community Edition nor in the Enterprise cloud or in Enterprise on-premises edition.
| Topic | Content |
| ------------------------------------------------------------ |--------------------------------------------------------------------------------------------------------------------------|
| [Select a project](../../getting-started/projects/) | Open a project which you want to work at. |
| [Create a new project](../../getting-started/projects/#create-a-new-project) | Find out how to create a new project in OpenProject. |
| [Create a subproject](#create-a-subproject) | Create a subproject of an existing project. |
| [Project structure](#project-structure) | Find out how to set up a project structure. |
| [Project settings](#project-settings) | Configure further settings for your projects, such as description, project hierarchy structure, or setting it to public. |
| [Change the project hierarchy](#change-the-project-hierarchy) | You can change the hierarchy by selecting the parent project ("subproject of"). |
| [Set a project to public](#set-a-project-to-public) | Make a project accessible for (at least) all users within your instance. |
| [Create a project template](./project-templates/#create-a-project-template) | Configure a project and set it as template to copy it for future projects. |
| [Use a project template](./project-templates/#use-a-project-template) | Create a new project based on an existing template project. |
| [Copy a project](#copy-a-project) | Copy an existing project. |
| [Archive a project](#archive-a-project) | Find out how to archive completed projects. |
| [Delete a project](#delete-a-project) | How to delete a project? |
| [Projects list](#projects-list) | Get an overview of all your projects in the projects list. |
| [Export project list](#export-projects) | You can export the project list to XLS or CSV. |
| [Project overarching reports](#project-overarching-reports) | How to create project overarching reports across multiple projects? |
| Topic | Content |
|------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------|
| [Select a project](../../getting-started/projects/) | Open a project which you want to work at. |
| [Create a new project](../../getting-started/projects/#create-a-new-project) | Find out how to create a new project in OpenProject. |
| [Create a subproject](#create-a-subproject) | Create a subproject of an existing project. |
| [Project structure](#project-structure) | Find out how to set up a project structure. |
| [Project settings](#project-settings) | Configure further settings for your projects, such as description, project hierarchy structure, or setting it to public. |
| [Change the project hierarchy](#change-the-project-hierarchy) | You can change the hierarchy by selecting the parent project ("subproject of"). |
| [Set a project to public](#set-a-project-to-public) | Make a project accessible for (at least) all users within your instance. |
| [Create a project template](./project-templates/#create-a-project-template) | Configure a project and set it as template to copy it for future projects. |
| [Use a project template](./project-templates/#use-a-project-template) | Create a new project based on an existing template project. |
| [Copy a project](#copy-a-project) | Copy an existing project. |
| [Archive a project](#archive-a-project) | Find out how to archive completed projects. |
| [Delete a project](#delete-a-project) | How to delete a project. |
| [Projects list](#projects-list) | Get an overview of all your projects in the projects list. |
| [Export project list](#export-projects) | You can export the project list to XLS or CSV. |
| [Project overarching reports](#project-overarching-reports) | How to create project overarching reports across multiple projects. |
![](https://openproject-docs.s3.eu-central-1.amazonaws.com/videos/OpenProject-Projects-Introduction.mp4)

@ -17,13 +17,13 @@ A few notes:
| Topic | Content |
|-------------------------------------------------------------------------------------------|:--------------------------------------------|
| [Main view](#main-view---start-a-new-or-select-an-existing-team-planner) | How to start a team planner? |
| [Planning calendar basics](#planning-calendar-basics) | How to navigate the team planner? |
| [Getting started](#getting-started) | How to get started? |
| [Adding team members](#step-1-adding-team-members) | How to add team members? |
| [Adding/working with work package strips](#step-2-addingworking-with-work-package-strips) | How to work with work package strips? |
| [Work package strip detail view](#work-package-strip-detail-view) | How to access the work package detail view? |
| [Removing a work package strip](#removing-a-work-package-strip) | How to remove a work package strip? |
| [Main view](#main-view---start-a-new-or-select-an-existing-team-planner) | How to start a team planner. |
| [Planning calendar basics](#planning-calendar-basics) | How to navigate the team planner. |
| [Getting started](#getting-started) | How to get started. |
| [Adding team members](#step-1-adding-team-members) | How to add team members. |
| [Adding/working with work package strips](#step-2-addingworking-with-work-package-strips) | How to work with work package strips. |
| [Work package strip detail view](#work-package-strip-detail-view) | How to access the work package detail view. |
| [Removing a work package strip](#removing-a-work-package-strip) | How to remove a work package strip. |
<video src="https://openproject-docs.s3.eu-central-1.amazonaws.com/videos/OpenProject-Team-Planner.mp4" type="video/mp4" controls="" style="width:100%"></video>
@ -48,7 +48,7 @@ A few notes:
![Overview of the planning calendar basics](planning-calendar-basics.png)
How to navigate the team planner? - The numbers below correspond with the above image:
How to navigate the team planner - the numbers below correspond with the above image:
1. The top header: Click on the top header (where it says **Team planner** in the picture above) to edit the name of your new team planning calendar. The top header is in edit mode by default, so you can just click right on the text. This is where you can give the new team planning calendar its new name. Your new name gets saved automatically by exiting the top header (by clicking somewhere else, for example).
2. Use the **+ add existing** button to add an existing work package to your view. Note: You cannot create new work packages from the team planner module. Create new work packages in the work package module, then select them in the team planner.

@ -12,11 +12,11 @@ Time and costs functionality in OpenProject allows keeping track of the resource
Create budgets, log time and costs on specific work packages and create time and cost reports based on your needs.
| Topic | Content |
| ------------------------------------- | :------------------------------------------ |
| [Time tracking](time-tracking) | How to log time to work packages? |
| [Cost tracking](cost-tracking) | How to track unit costs spent in a project? |
| [Time and cost reporting](reporting) | How to create time and cost reports? |
| Topic | Content |
|--------------------------------------|:--------------------------------------------|
| [Time tracking](time-tracking) | How to log time to work packages. |
| [Cost tracking](cost-tracking) | How to track unit costs spent in a project. |
| [Time and cost reporting](reporting) | How to create time and cost reports. |
## Time tracking, cost tracking and reporting video tutorial

@ -10,11 +10,11 @@ keywords: cost tracking, log costs, unit costs
You can log unit costs on a work package within a project to keep track on certain units spent in a project, e.g. travel costs or machines.
| Topic | Content |
| ------------------------------------------------------------ | --------------------------------------------------- |
| [Logging costs to a work package](#logging-costs-to-a-work-package) | How to track costs on a work package? |
| [Edit logged costs](#edit-logged-costs) | How to edit spent costs logged to a work package? |
| [Delete logged costs](#delete-logged-costs) | How to delete spent costs logged to a work package? |
| Topic | Content |
|---------------------------------------------------------------------|-----------------------------------------------------|
| [Logging costs to a work package](#logging-costs-to-a-work-package) | How to track costs on a work package. |
| [Edit logged costs](#edit-logged-costs) | How to edit spent costs logged to a work package. |
| [Delete logged costs](#delete-logged-costs) | How to delete spent costs logged to a work package. |
## Logging costs to a work package

@ -14,9 +14,9 @@ OpenProject will automatically roll-up progress to parent work packages.
| Topic | Content |
|-----------------------------------------------------------------------------------------------------|:--------------------------------------------------|
| [Manual progress tracking](#manual-progress-tracking) | How to track progress manually per work package? |
| [Progress tracking in the work package hierarchy](#progress-tracking-in-the-work-package-hierarchy) | How to track progress for multiple work packages? |
| [Status based progress tracking](#status-based-progress-tracking) | How to track progress use work package status? |
| [Manual progress tracking](#manual-progress-tracking) | How to track progress manually per work package. |
| [Progress tracking in the work package hierarchy](#progress-tracking-in-the-work-package-hierarchy) | How to track progress for multiple work packages. |
| [Status based progress tracking](#status-based-progress-tracking) | How to track progress use work package status. |
## Manual progress tracking

@ -13,14 +13,14 @@ You can easily report spent time and costs in OpenProject and filter, group and
> **Note**: To use the time tracking functionality, the **Time and costs module** needs to be activated in the [project settings](../../projects/project-settings/modules/).
| Topic | Content |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
| [Time and costs report](#time-and-costs-reports) | How to open time and costs reports in OpenProject? |
| [Change time and costs reports](#change-time-and-costs-reports) | How to change the view of the reports, e.g. to filter, group by and select units to be displayed? |
| [Filter cost reports](#filter-cost-reports) | How to filter time and cost reports? |
| [Group by criteria for cost reports](#group-by-criteria-for-cost-reports) | How to group time and cost reports? |
| [Select units to display](#select-units-to-display) | How to choose the unit to be displayed in a report? |
| [Export time and cost reports](#export-time-and-cost-reports) | How to export time and cost reports to Excel? |
| Topic | Content |
|---------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------|
| [Time and costs report](#time-and-costs-reports) | How to open time and costs reports in OpenProject. |
| [Change time and costs reports](#change-time-and-costs-reports) | How to change the view of the reports, e.g. to filter, group by and select units to be displayed. |
| [Filter cost reports](#filter-cost-reports) | How to filter time and cost reports. |
| [Group by criteria for cost reports](#group-by-criteria-for-cost-reports) | How to group time and cost reports. |
| [Select units to display](#select-units-to-display) | How to choose the unit to be displayed in a report. |
| [Export time and cost reports](#export-time-and-cost-reports) | How to export time and cost reports to Excel. |
## Time and costs reports

@ -13,15 +13,15 @@ Users can book their time or units spent on an activity within a project directl
> **Note**: To use the time tracking functionality, the **Time and costs module** needs to be activated in the [project settings](../../projects/project-settings/modules/).
| Topic | Content |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
| [Logging time](#logging-time-in-the-work-package-view) | How to log time to work packages
| [Logging time via commit message](#logging-time-via-commit-message) | How to log time via a commit message to a work package? |
| [Edit logged time](#edit-logged-time) | How to edit logged time on a work package |
| [Delete time entries](#delete-time-entries) | How to delete time entries logged to a work package |
| [Logging and editing time for other users](#logging-and-editing-time-for-other-users) | How to log time to work packages |
| [Spent time widget on the My Page](#spent-time-widget-on-the-my-page) | How to easily track and display spent time in the spent time widget on the MyPage? |
| [Track time with Toggl](./toggl-integration) | How to track spent time with Toggl integration |
| Topic | Content |
|---------------------------------------------------------------------------------------|------------------------------------------------------------------------------------|
| [Logging time](#logging-time-in-the-work-package-view) | How to log time to work packages. |
| [Logging time via commit message](#logging-time-via-commit-message) | How to log time via a commit message to a work package. |
| [Edit logged time](#edit-logged-time) | How to edit logged time on a work package. |
| [Delete time entries](#delete-time-entries) | How to delete time entries logged to a work package. |
| [Logging and editing time for other users](#logging-and-editing-time-for-other-users) | How to log time to work packages. |
| [Spent time widget on the My Page](#spent-time-widget-on-the-my-page) | How to easily track and display spent time in the spent time widget on the MyPage. |
| [Track time with Toggl](./toggl-integration) | How to track spent time with Toggl integration. |
## Logging time in the work package view
@ -124,4 +124,4 @@ Here, you can click the **Edit button** on the top right corner of the user prof
Alternatively, you can navigate to *Administration -> Users and permissions -> Users* and click on the respective user name.
Click on the **Rate history** tab. Find out [here](../../../system-admin-guide/users-permissions/users/#rate-history) how to continue.
Click on the **Rate history** tab. Find out [here](../../../system-admin-guide/users-permissions/users/#rate-history) how to continue.

@ -10,12 +10,12 @@ keywords: create wiki
In OpenProject you can create and edit wiki pages together with your team to document important project information.
| Feature | Documentation for |
| ------------------------------------------------------------ | --------------------------------------------- |
| [Create a new wiki page](#create-a-new-wiki-page) | How to create a new wiki page? |
| [Edit a wiki page](#edit-a-wiki-page) | How to make changes to an existing wiki page? |
| [Create a wiki page structure](#create-a-wiki-page-structure) | How to create a wiki page structure? |
| [Watch a wiki page](#watch-a-wiki-page) | How to watch a wiki page? |
| Feature | Documentation for |
|---------------------------------------------------------------|-----------------------------------------------|
| [Create a new wiki page](#create-a-new-wiki-page) | How to create a new wiki page. |
| [Edit a wiki page](#edit-a-wiki-page) | How to make changes to an existing wiki page. |
| [Create a wiki page structure](#create-a-wiki-page-structure) | How to create a wiki page structure. |
| [Watch a wiki page](#watch-a-wiki-page) | How to watch a wiki page. |
## Create a new wiki page

@ -28,7 +28,7 @@ The option configure menu item was designed to ease the handling of page structu
After the initial creation of the page you can select the function. If you select Do not show this wikipage in project navigation the page will be excluded from the menu.
Otherwise the page will appear in the project navigation and you can select, whether it shall be a subitem of an existing wikipage.
### I created a wiki-page but cannot find it anywhere in the menu - how to access it?
### I created a wiki-page but cannot find it anywhere in the menu - how can I access it?
After saving a wiki-page, you can create a referencing link for the page to easily access it - either by making it a wiki menu item (s.a.) or by referencing it with a link on the main wiki-page. If this chance was missed you can reaccess the page at any time, by typing in the page’s URL in the browser:
The example URL would be: openproject.org/projects/your-projects-name/wiki/your-wiki-page’s-name
@ -48,6 +48,6 @@ Next to the field to enter the page content, some of the basic formatting comman
Above you see the commands for text styles, headline options and lists, as well as the command to include an image.
On the right, there is also a help link which displays all commands which can be used for formatting.
### How to create a table of content?
### How to create a table of content
The macro to create a table of content is {{toc}}.

@ -2,7 +2,7 @@
sidebar_navigation:
title: Copy, move, delete work packages
priority: 800
description: How to copy, change project or delete a work package?
description: How to copy, change project or delete a work package.
keywords: copy work package, delete work package, move work package
---

@ -2,16 +2,16 @@
sidebar_navigation:
title: Create work packages
priority: 990
description: How to create Work packages in OpenProject?
keywords: create Work packages
description: How to create Work packages in OpenProject.
keywords: create work packages
---
# Create Work packages
| Topic | Content |
| ------------------------------------------------------------ | ---------------------------------------------- |
| [Create Work packages](#how-to-create-work-packages) | How to create a new Work package in a project? |
| [Add attachments to a Work package](#add-attachments-to-work-packages) | How to add attachments to a Work package? |
| Topic | Content |
|------------------------------------------------------------------------|------------------------------------------------|
| [Create Work packages](#how-to-create-work-packages) | How to create a new Work package in a project. |
| [Add attachments to a Work package](#add-attachments-to-work-packages) | How to add attachments to a Work package. |
## How to create Work packages

@ -2,18 +2,18 @@
sidebar_navigation:
title: Edit work packages
priority: 900
description: How to edit work packages in OpenProject?
description: How to edit work packages in OpenProject.
keywords: edit work packages
---
# Edit work packages
| Feature | Documentation for |
| --------------------------------------------------- | -------------------------------------------------- |
| [Update a work package](#update-a-work-package) | How to make a change to an existing work package? |
| [Watchers](#watchers) | How to add or remove watchers from a work package? |
| [Export work packages](#export-work-packages) | How to export work packages? |
| [Bulk edit work packages](#bulk-edit-work-packages) | How to edit several work packages as once? |
|-----------------------------------------------------|----------------------------------------------------|
| [Update a work package](#update-a-work-package) | How to make a change to an existing work package. |
| [Watchers](#watchers) | How to add or remove watchers from a work package. |
| [Export work packages](#export-work-packages) | How to export work packages. |
| [Bulk edit work packages](#bulk-edit-work-packages) | How to edit several work packages as once. |
## Update a work package
@ -36,7 +36,7 @@ All changes of a work package are documented in the work package [Activity](../.
> **Note**: There is no possibility to undo changes to work packages (Ctrl+Z).
### How to assign a team member to a work package?
### How to assign a team member to a work package
When you assign a team member to a work package, you can distinguish between **assignee** and **accountable**. Accountable per definition would be the one accountable for the delivery of the work package. The assignee is the person currently assigned and working on the work package.
Choose the respective team member from the drop down for assignee or accountable. If you are looking to add a team member that is not coming up in the drop down, this team member might not yet be a member of the project and needs to be [invited](../../members/#add-members).
@ -45,7 +45,7 @@ Choose the respective team member from the drop down for assignee or accountable
### How to update the status of a work package?
### How to update the status of a work package
To update the status of a work package, click on the current status in the work package details and select the new status in the drop-down list.
@ -53,7 +53,7 @@ To update the status of a work package, click on the current status in the work
Please note, the status may differ from work package type. They can be configured in the [system administration](../../../system-admin-guide).
### How to add comments to a work package?
### How to add comments to a work package
To add a comment to a work package, open the [details view](../../work-packages/work-package-views/#work-package-full-screen-view) or the [split screen view](../../work-packages/work-package-views/#work-package-split-screen-view) of a work package. On the tab [Activity](../../../getting-started/work-packages-introduction/#activity-of-work-packages) tab you have a comment field at the bottom (or on top depending on your [My account settings](../../../getting-started/my-account/)).
@ -71,7 +71,7 @@ You can mention and notify team members via [@notification](../../notifications/
## Watchers
### How to add watchers to a work package?
### How to add watchers to a work package
<div class="glossary">
**Watchers** can be added to a work package in order to notify members about changes. They will receive notifications according to their notification settings if changes are made to the respective work package.
@ -83,7 +83,7 @@ It is also possible to add oneself as watcher (if you have sufficient permission
![watchers](watchers.png)
### How to remove watchers from a work package?
### How to remove watchers from a work package
To remove watchers, navigate to the work package [details view](../../work-packages/work-package-views/#work-package-full-screen-view) and select the tab Watchers. Click the cross icon next to a watcher to remove the watcher from a work package.
The user will no longer get notifications in OpenProject about changes to this work package according to their notification settings. However, if he/she is the author, assignee or accountable of the work package there still might be notifications. Read [here](../../../getting-started/my-account/#notifications-settings) for more information.

@ -2,7 +2,7 @@
sidebar_navigation:
title: Work package relations and hierarchies
priority: 600
description: How to add or configure work package relations?
description: How to add or configure work package relations.
keywords: relations, hierarchies, child, parent, blocked, includes, part of
---

@ -2,20 +2,20 @@
sidebar_navigation:
title: Configure work package table
priority: 700
description: How to configure the work package list in OpenProject?
description: How to configure the work package list in OpenProject.
keywords: work packages table configuration, work package list, columns, filter, group
---
# Work package table configuration
| Topic | Content |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
| [Add or remove columns](#add-or-remove-columns-in-the-work-package-table) | How to add or remove columns in the work package table? |
| [Filter work packages](#filter-work-packages) | How to filter in the work package table? |
| [Sort the work package list](#sort-the-work-package-list) | How to sort within the work package table? |
| [Display settings](#flat-list-hierarchy-mode-and-group-by) | Get to know the flat list, the hierarchy mode, the group by and the sum feature. |
| [Attribute highlighting (Premium Feature)](#attribute-highlighting-premium-feature) | How to highlight certain attributes in the work package table? |
| [Save work package views](#save-work-package-views) | How to save a new work package view and how to change existing ones? |
| Topic | Content |
|-------------------------------------------------------------------------------------|----------------------------------------------------------------------------------|
| [Add or remove columns](#add-or-remove-columns-in-the-work-package-table) | How to add or remove columns in the work package table. |
| [Filter work packages](#filter-work-packages) | How to filter in the work package table. |
| [Sort the work package list](#sort-the-work-package-list) | How to sort within the work package table. |
| [Display settings](#flat-list-hierarchy-mode-and-group-by) | Get to know the flat list, the hierarchy mode, the group by and the sum feature. |
| [Attribute highlighting (Premium Feature)](#attribute-highlighting-premium-feature) | How to highlight certain attributes in the work package table. |
| [Save work package views](#save-work-package-views) | How to save a new work package view and how to change existing ones. |
You can configure the work package table view in OpenProject to display the information that you need in the list.

@ -15,13 +15,13 @@ Starting with version 8.0.0, OpenProject features a quasi-WYSIWYG editor, powere
| Topic | Content |
| ------------------------------------------------------------ | -------------------------------------------------------- |
| [Basic formatting](#basic-formatting) | Basic formatting elements in the WYSIWYG editor |
| [Image handling](#image-handling) | How to add images in the WYSIWYG editor? |
| [Macros](#macros) | Available macros in the WYSIWYG editor |
| [Links to OpenProject resources](#links-to-openproject-resources) | How to link to resources like wikis, projects, meetings? |
| [Embedding of work package attributes and project attributes](#embedding-of-work-package-attributes-and-project-attributes) | How to embed attributes and attribute help texts? |
| Topic | Content |
|-----------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------|
| [Basic formatting](#basic-formatting) | Basic formatting elements in the WYSIWYG editor |
| [Image handling](#image-handling) | How to add images in the WYSIWYG editor. |
| [Macros](#macros) | Available macros in the WYSIWYG editor |
| [Links to OpenProject resources](#links-to-openproject-resources) | How to link to resources like wikis, projects, meetings. |
| [Embedding of work package attributes and project attributes](#embedding-of-work-package-attributes-and-project-attributes) | How to embed attributes and attribute help texts. |
## Basic formatting

@ -16,6 +16,8 @@
[focusDirectly]="shouldFocus"
[model]="value"
[resource]="resourceType"
[compareWith]="compareByHref"
[trackByFn]="itemTracker"
(change)="setValues($event)"
></op-autocompleter>
</div>

@ -34,6 +34,7 @@ import { I18nService } from 'core-app/core/i18n/i18n.service';
import { CurrentUserService } from 'core-app/core/current-user/current-user.service';
import { take } from 'rxjs/internal/operators/take';
import { CollectionResource } from 'core-app/features/hal/resources/collection-resource';
import { compareByHref } from 'core-app/shared/helpers/angular/tracking-functions';
@Component({
selector: 'op-filter-searchable-multiselect-value',
@ -62,6 +63,10 @@ export class FilterSearchableMultiselectValueComponent extends UntilDestroyedMix
initialRequest$:Observable<CollectionResource>;
itemTracker = (item:HalResource):string => item.href || item.id || item.name;
compareByHref = compareByHref;
resourceType:string|null = null;
readonly text = {

@ -43,6 +43,7 @@ import { I18nService } from 'core-app/core/i18n/i18n.service';
import { UntilDestroyedMixin } from 'core-app/shared/helpers/angular/until-destroyed.mixin';
import { ApiV3Service } from 'core-app/core/apiv3/api-v3.service';
import { WpSingleViewService } from 'core-app/features/work-packages/routing/wp-view-base/state/wp-single-view.service';
import { BrowserDetector } from 'core-app/core/browser/browser-detector.service';
@Directive()
export class ActivityPanelBaseController extends UntilDestroyedMixin implements OnInit {
@ -82,6 +83,7 @@ export class ActivityPanelBaseController extends UntilDestroyedMixin implements
readonly uiRouterGlobals:UIRouterGlobals,
readonly wpActivity:WorkPackagesActivityService,
readonly storeService:WpSingleViewService,
readonly browserDetector:BrowserDetector,
private wpSingleViewService:WpSingleViewService,
) {
super();
@ -90,8 +92,10 @@ export class ActivityPanelBaseController extends UntilDestroyedMixin implements
this.togglerText = this.text.commentsOnly;
const lastTransitionName = uiRouterGlobals.successfulTransitions.peekTail().from().name as string;
const comingFromNotifications = /^notifications/.test(lastTransitionName);
const firstRouteOnMobile = lastTransitionName === '' && this.browserDetector.isMobile;
if (/^notifications/.test(lastTransitionName)) {
if (comingFromNotifications || firstRouteOnMobile) {
this.comingFromNotifications = true;
}
}

@ -41,6 +41,7 @@
[searchable]="searchable"
[selectableGroupAsModel]="selectableGroupAsModel"
[trackByFn]="trackByFn"
[compareWith]="compareWith"
[searchFn]="searchFn"
[labelForId]="labelForId"
[inputAttrs]="inputAttrs"

@ -42,7 +42,6 @@ import { HalResource } from 'core-app/features/hal/resources/hal-resource';
import { Highlighting } from 'core-app/features/work-packages/components/wp-fast-table/builders/highlighting/highlighting.functions';
import { UntilDestroyedMixin } from 'core-app/shared/helpers/angular/until-destroyed.mixin';
import { I18nService } from 'core-app/core/i18n/i18n.service';
import { compareByHrefOrString } from 'core-app/shared/helpers/angular/tracking-functions';
import { OpAutocompleterFooterTemplateDirective } from 'core-app/shared/components/autocompleter/autocompleter-footer-template/op-autocompleter-footer-template.directive';
import { OpAutocompleterService } from './services/op-autocompleter.service';
@ -158,6 +157,8 @@ export class OpAutocompleterComponent extends UntilDestroyedMixin implements OnI
@Input() public trackByFn ? = null;
@Input() public compareWith ? = (a:unknown, b:unknown):boolean => a === b;
@Input() public clearOnBackspace?:boolean = true;
@Input() public labelForId ? = null;
@ -205,8 +206,6 @@ export class OpAutocompleterComponent extends UntilDestroyedMixin implements OnI
@Output() public scrollToEnd = new EventEmitter();
public compareByHrefOrString = compareByHrefOrString;
public active:Set<string>;
public results$:Observable<unknown>;

@ -31,8 +31,7 @@ module API
module TimeEntries
class AvailableWorkPackagesOnCreateAPI < ::API::OpenProjectAPI
after_validation do
authorize_any %i[log_time],
global: true
authorize_any %i[log_time log_own_time], global: true
end
helpers AvailableWorkPackagesHelper

@ -106,7 +106,7 @@ describe 'My page time entries current user widget spec', type: :feature, js: tr
let(:user) do
create(:user,
member_in_project: project,
member_with_permissions: %i[view_time_entries edit_time_entries view_work_packages log_time])
member_with_permissions: %i[view_time_entries edit_time_entries view_work_packages log_own_time])
end
let(:my_page) do
Pages::My::Page.new

@ -0,0 +1,39 @@
#-- copyright
# OpenProject is an open source project management software.
# Copyright (C) 2012-2022 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.
#++
class CleanupWebhookLogsJob < ::Cron::CronJob
# runs at 5:28 on Sunday
self.cron_expression = '28 5 * * 7'
# Clean any logs older than 7 days
def perform
::Webhooks::Log
.where('created_at < ?', 7.days.ago)
.delete_all
end
end

@ -38,7 +38,7 @@ en:
enabled_text: 'The webhook will emit payloads for the defined events below.'
disabled_text: 'Click the edit button to activate the webhook.'
deliveries:
no_results_table: No deliveries have been made for this webhook.
no_results_table: No deliveries have been made for this webhook in the past days.
title: 'Recent deliveries'
time: 'Delivery time'
form:

@ -50,5 +50,7 @@ module OpenProject::Webhooks
::OpenProject::Webhooks::EventResources.subscribe!
end
end
add_cron_jobs { CleanupWebhookLogsJob }
end
end

@ -118,6 +118,39 @@ describe 'filter work packages', js: true do
end
end
context 'when filtering by status in project' do
let(:status) { create :status, name: 'Open status' }
let(:closed_status) { create :closed_status, name: 'Closed status' }
let(:work_package_with_status) do
create :work_package, project:, subject: 'With open status', status:
end
let(:work_package_without_status) { create :work_package, subject: 'With closed status', project:, status: closed_status }
before do
work_package_with_status
work_package_without_status
wp_table.visit!
end
it 'allows filtering and matching the selected value' do
filters.open
filters.remove_filter :status
filters.expect_no_filter_by :status
filters.add_filter_by('Status', 'is', status.name)
loading_indicator_saveguard
wp_table.expect_work_package_listed work_package_with_status
wp_table.ensure_work_package_not_listed! work_package_without_status
filters.open_autocompleter :status
expect(page).to have_selector('.ng-option', text: closed_status.name)
expect(page).to have_no_selector('.ng-option', text: status.name)
end
end
context 'by finish date outside of a project' do
let(:work_package_with_due_date) { create :work_package, project:, due_date: Date.today }
let(:work_package_without_due_date) { create :work_package, project:, due_date: Date.today + 5.days }

@ -255,15 +255,21 @@ describe UserMailer, type: :mailer do
let(:logs) { ['info: foo', 'error: bar'] }
let(:recipient) { user }
let(:current_time) { "2022-11-03 9:15".to_time }
let(:incoming_email) do
Mail.new(subject: mail_subject, message_id:, body:, from:)
end
let(:mail_subject) { 'New work package 42' }
let(:message_id) { '<000501c8d452$a95cd7e0$0a00a8c0@osiris>' }
let(:message_id) { '000501c8d452$a95cd7e0$0a00a8c0@osiris' }
let(:from) { 'l.lustig@openproject.com' }
let(:body) { "Project: demo-project" }
let(:incoming_email) do
{
message_id:,
from:,
subject: mail_subject,
quote: body,
text: body
}
end
let(:outgoing_email) { deliveries.first }
before do

@ -509,7 +509,7 @@ describe MailHandler, type: :model do
it 'responds with an error email' do
expect(UserMailer).to have_received(:incoming_email_error) do |user, mail, logs|
expect(user).to eq anno_user
expect(mail.subject).to eq "Ticket by unknown user"
expect(mail[:subject]).to eq "Ticket by unknown user"
expect(logs).to eq [expected.sub(/^MailHandler/, "error")]
end
end

@ -162,6 +162,20 @@ module Components
find("#filter_#{field} .advanced-filters--remove-filter-icon").click
end
def open_autocompleter(id)
input = page.all("#filter_#{id} .advanced-filters--filter-value .ng-input input").first
if input
input.click
input
end
end
def close_autocompleter(id)
input = open_autocompleter(id)
input&.send_keys :escape
end
protected
def filter_button
@ -233,15 +247,6 @@ module Components
yield page.has_selector?('.ng-select-container')
end
end
def close_autocompleter(id)
input = page.all("#filter_#{id} .advanced-filters--filter-value .ng-input input").first
if input
input.click
input.send_keys :escape
end
end
end
end
end

Loading…
Cancel
Save