Merge branch 'dev' into implementation/42160-add-download-file-direct-action-to-hover-menu

pull/10834/head
Eric Schubert 2 years ago
commit 965c305927
No known key found for this signature in database
GPG Key ID: 1D346C019BD4BAA2
  1. 2
      CONTRIBUTING.md
  2. 2
      Gemfile
  3. 4
      Gemfile.lock
  4. 3
      app/models/application_version.rb
  5. 2
      app/models/attachment.rb
  6. 4
      app/models/paper_trail_audit.rb
  7. 2
      app/models/principal.rb
  8. 2
      app/models/project.rb
  9. 3
      app/models/work_package.rb
  10. 6
      app/workers/copy_project_job.rb
  11. 41
      app/workers/paper_trail_audits/cleanup_job.rb
  12. 1
      config/initializers/cronjobs.rb
  13. 16
      config/initializers/paper_trail.rb
  14. 2
      config/locales/crowdin/id.yml
  15. 2
      config/locales/crowdin/js-cs.yml
  16. 16
      db/migrate/20220629061540_add_paper_trail.rb
  17. 5
      docs/README.md
  18. 1
      docs/api/README.md
  19. 1
      docs/api/faq/README.md
  20. 5
      docs/bim-guide/README.md
  21. BIN
      docs/bim-guide/bim-issue-management/Cards-mode.png
  22. BIN
      docs/bim-guide/bim-issue-management/Create-a-viewpoint.png
  23. BIN
      docs/bim-guide/bim-issue-management/Filter-BIM-Issue.png
  24. BIN
      docs/bim-guide/bim-issue-management/OpenProject-toolbar.png
  25. BIN
      docs/bim-guide/bim-issue-management/OpenProject_BCF_Module.png
  26. 1
      docs/bim-guide/bim-issue-management/README.md
  27. BIN
      docs/bim-guide/bim-issue-management/Viewer_and_Cards.png
  28. BIN
      docs/bim-guide/bim-issue-management/adding-multiple-viewpoints.png
  29. BIN
      docs/bim-guide/bim-issue-management/bcf_module.png
  30. BIN
      docs/bim-guide/bim-issue-management/bim-issues-and-work-packages.png
  31. BIN
      docs/bim-guide/bim-issue-management/create-a-new-BIM-issue.png
  32. BIN
      docs/bim-guide/bim-issue-management/display_bim_issue.png
  33. BIN
      docs/bim-guide/bim-issue-management/import-bcf.png
  34. BIN
      docs/bim-guide/bim-issue-management/imported-bcf-issues.png
  35. BIN
      docs/bim-guide/bim-issue-management/model_maps_view.png
  36. BIN
      docs/bim-guide/bim-issue-management/outdated-bcf-issues.png
  37. BIN
      docs/bim-guide/bim-issue-management/successfull-bcf-import.png
  38. BIN
      docs/bim-guide/bim-issue-management/table.png
  39. BIN
      docs/bim-guide/bim-issue-management/viewer-and-table.png
  40. BIN
      docs/bim-guide/ifc-viewer/2-d-view.png
  41. 1
      docs/bim-guide/ifc-viewer/README.md
  42. BIN
      docs/bim-guide/ifc-viewer/Select_elements.png
  43. BIN
      docs/bim-guide/ifc-viewer/Show_Hide_Elements.gif
  44. BIN
      docs/bim-guide/ifc-viewer/Upload_IFC_Model.png
  45. BIN
      docs/bim-guide/ifc-viewer/add-a-new-ifc-model.png
  46. BIN
      docs/bim-guide/ifc-viewer/bim-model-management.png
  47. BIN
      docs/bim-guide/ifc-viewer/clear_slices.png
  48. BIN
      docs/bim-guide/ifc-viewer/element-properties.png
  49. BIN
      docs/bim-guide/ifc-viewer/first-person-button.png
  50. BIN
      docs/bim-guide/ifc-viewer/fit-view-button.png
  51. BIN
      docs/bim-guide/ifc-viewer/hide-elements-button.png
  52. BIN
      docs/bim-guide/ifc-viewer/hide-elements-context-menu.png
  53. BIN
      docs/bim-guide/ifc-viewer/ifc-viewer-overview.png
  54. BIN
      docs/bim-guide/ifc-viewer/import-and-export-ifc-models.png
  55. BIN
      docs/bim-guide/ifc-viewer/import-ifc-model.png
  56. BIN
      docs/bim-guide/ifc-viewer/inspect-properties.png
  57. BIN
      docs/bim-guide/ifc-viewer/orthographic-button.png
  58. BIN
      docs/bim-guide/ifc-viewer/orthographic-view.png
  59. BIN
      docs/bim-guide/ifc-viewer/reset-view.png
  60. BIN
      docs/bim-guide/ifc-viewer/select-elements-button.png
  61. BIN
      docs/bim-guide/ifc-viewer/set-model-as-default.png
  62. BIN
      docs/bim-guide/ifc-viewer/show-in-explorer.png
  63. BIN
      docs/bim-guide/ifc-viewer/show-properties-button.png
  64. BIN
      docs/bim-guide/ifc-viewer/show-properties.png
  65. BIN
      docs/bim-guide/ifc-viewer/slice-building-model.png
  66. BIN
      docs/bim-guide/revit-add-in/OpenProject_BIM_Add_Viewpoint.png
  67. BIN
      docs/bim-guide/revit-add-in/OpenProject_BIM_BCF_Module.png
  68. BIN
      docs/bim-guide/revit-add-in/OpenProject_BIM_Create_BCF.png
  69. BIN
      docs/bim-guide/revit-add-in/OpenProject_BIM_Issues.png
  70. BIN
      docs/bim-guide/revit-add-in/OpenProject_BIM_Login.png
  71. BIN
      docs/bim-guide/revit-add-in/OpenProject_BIM_Projects.png
  72. BIN
      docs/bim-guide/revit-add-in/OpenProject_BIM_Start.png
  73. BIN
      docs/bim-guide/revit-add-in/OpenProject_BIM_Synchronization.png
  74. 5
      docs/bim-guide/revit-add-in/README.md
  75. BIN
      docs/bim-guide/revit-add-in/RevitAddIn_Settings.png
  76. BIN
      docs/bim-guide/revit-add-in/installation-step-01.png
  77. BIN
      docs/bim-guide/revit-add-in/installation-step-02.png
  78. BIN
      docs/bim-guide/revit-add-in/installation-step-03.png
  79. BIN
      docs/bim-guide/revit-add-in/installer-smart-screen-01.png
  80. BIN
      docs/bim-guide/revit-add-in/installer-smart-screen-02.png
  81. 3
      docs/development/README.md
  82. 1
      docs/development/concepts/README.md
  83. 1
      docs/development/concepts/application-architecture/README.md
  84. 1
      docs/development/concepts/dynamic-forms/README.md
  85. 1
      docs/development/concepts/hal-resources/README.md
  86. 1
      docs/development/concepts/infrastructure/README.md
  87. 1
      docs/development/concepts/inline-editing/README.md
  88. 1
      docs/development/concepts/permissions/README.md
  89. 1
      docs/development/concepts/queries/README.md
  90. 1
      docs/development/concepts/resource-changesets/README.md
  91. 1
      docs/development/concepts/resource-schemas/README.md
  92. 1
      docs/development/concepts/state-management/README.md
  93. 1
      docs/development/concepts/translations/README.md
  94. 1
      docs/development/contribution-documentation/README.md
  95. 3
      docs/development/contribution-documentation/contribution-support/README.md
  96. 106
      docs/development/contribution-documentation/documentation-process-internal-contributor/README.md
  97. BIN
      docs/development/contribution-documentation/documentation-process-internal-contributor/add-documentation-label-pull-requests.png
  98. BIN
      docs/development/contribution-documentation/documentation-process-internal-contributor/clone-repository.png
  99. BIN
      docs/development/contribution-documentation/documentation-process-internal-contributor/commit-history-in-github-desktop.png
  100. 0
      docs/development/contribution-documentation/documentation-process-internal-contributor/comparing-changes.png
  101. Some files were not shown because too many files have changed in this diff Show More

@ -143,5 +143,5 @@ version 1.0.0, available at
## Contributors license agreement
Contributors have to sign a CLA before contributing to OpenProject.
The [CLA can be found here](https://www.openproject.org/contributor-license-agreement/)
The [CLA can be found here](https://www.openproject.org/legal/contributor-license-agreement/)
and has to be filled out and sent to info@openproject.org.

@ -159,6 +159,8 @@ gem 'cells-rails', '~> 0.1.4'
gem 'meta-tags', '~> 2.16.0'
gem "paper_trail", "~> 12.3"
group :production do
# we use dalli as standard memcache client
# requires memcached 1.4+

@ -683,6 +683,9 @@ GEM
webfinger (>= 1.0.1)
openproject-token (2.2.0)
activemodel
paper_trail (12.3.0)
activerecord (>= 5.2)
request_store (~> 1.1)
parallel (1.22.1)
parallel_tests (3.11.1)
parallel
@ -1111,6 +1114,7 @@ DEPENDENCIES
openproject-webhooks!
openproject-xls_export!
overviews!
paper_trail (~> 12.3)
parallel_tests (~> 3.1)
pg (~> 1.4.0)
plaintext (~> 0.3.2)

@ -0,0 +1,3 @@
class ApplicationVersion < ApplicationRecord
include PaperTrail::VersionConcern
end

@ -39,6 +39,8 @@ class Attachment < ApplicationRecord
if: -> { !internal_container? }
validate :container_changed_more_than_once
has_paper_trail
# Those columns are currently not displayed in the application and are rarely used
# at all.
# Their purpose currently is limited to full text search where the results are not highlighted.

@ -0,0 +1,4 @@
class PaperTrailAudit < ::ApplicationVersion
self.table_name = :paper_trail_audits
self.sequence_name = :paper_trail_audits_id_seq
end

@ -59,6 +59,8 @@ class Principal < ApplicationRecord
has_many :projects, through: :memberships
has_many :categories, foreign_key: 'assigned_to_id', dependent: :nullify
has_paper_trail
scopes :like,
:human,
:not_builtin,

@ -102,6 +102,8 @@ class Project < ApplicationRecord
author: nil,
datetime: :created_at
has_paper_trail
validates :name,
presence: true,
length: { maximum: 255 }

@ -159,6 +159,9 @@ class WorkPackage < ApplicationRecord
# makes virtual modal WorkPackageHierarchy available
has_closure_tree
# Add on_destroy paper trail
has_paper_trail
##################### WARNING #####################
# Do not change the order of acts_as_attachable #
# and acts_as_journalized! #

@ -61,16 +61,16 @@ class CopyProjectJob < ApplicationJob
if target_project
successful_status_update
ProjectMailer.copy_project_succeeded(user, source_project, target_project, errors).deliver_now
ProjectMailer.copy_project_succeeded(user, source_project, target_project, errors).deliver_later
else
failure_status_update
ProjectMailer.copy_project_failed(user, source_project, target_project_name, errors).deliver_now
ProjectMailer.copy_project_failed(user, source_project, target_project_name, errors).deliver_later
end
rescue StandardError => e
logger.error { "Failed to finish copy project job: #{e} #{e.message}" }
errors = [I18n.t('copy_project.failed_internal')]
failure_status_update
ProjectMailer.copy_project_failed(user, source_project, target_project_name, errors).deliver_now
ProjectMailer.copy_project_failed(user, source_project, target_project_name, errors).deliver_later
end
def store_status?

@ -0,0 +1,41 @@
#-- 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.
#++
module PaperTrailAudits
class CleanupJob < ::Cron::CronJob
# runs at 4:03 on Saturday
self.cron_expression = '3 4 * * 6'
# Clean any paper trails older than 60 days
def perform
::PaperTrailAudit
.where('created_at < ?', 60.days.ago)
.delete_all
end
end
end

@ -6,6 +6,7 @@ OpenProject::Application.configure do |application|
::Cron::ClearTmpCacheJob,
::Cron::ClearUploadedFilesJob,
::OAuth::CleanupJob,
::PaperTrailAudits::CleanupJob,
::Attachments::CleanupUncontaineredJob,
::Notifications::ScheduleReminderMailsJob,
::Ldap::SynchronizationJob

@ -0,0 +1,16 @@
PaperTrail.config.enabled = true # PT will be disabled by rspec
PaperTrail.config.has_paper_trail_defaults = {
versions: {
class_name: '::PaperTrailAudit',
name: :paper_trail_audits
},
version: :paper_trail_audit,
meta: {
whodunnit: ->(*) { User.current.id },
stack: ->(*) {
backtrace = Rails.backtrace_cleaner.clean caller
backtrace.join("\n")
}
},
on: %i[destroy]
}

@ -1549,7 +1549,7 @@ id:
label_feeds_access_key_type: "RSS"
label_file_plural: "File"
label_filter_add: "Tambah Filter"
label_filter_plural: "Filter"
label_filter_plural: "Penyaring"
label_filters_toggle: "Tampilkan/Sembunyikan penyaringan"
label_float: "Float"
label_folder: "Folder"

@ -656,7 +656,7 @@ cs:
membership_updated: 'Členství bylo aktualizováno'
title: 'Upozornění e-mailem'
pause:
label: 'Dočasně pozastavit denní připomenutí e-mailem'
label: 'Dočasně pozastavit denní posílání oznámení e-mailem'
first_day: 'První den'
last_day: 'Poslední den'
text_are_you_sure: "Jste si jisti?"

@ -0,0 +1,16 @@
class AddPaperTrail < ActiveRecord::Migration[7.0]
def change
create_table :paper_trail_audits do |t|
t.string :item_type, null: false
t.bigint :item_id, null: false
t.string :event, null: false
t.string :whodunnit
t.text :stack
t.jsonb :object
t.jsonb :object_changes
t.datetime :created_at
end
add_index :paper_trail_audits, %i(item_type item_id)
end
end

@ -3,14 +3,11 @@ sidebar_navigation:
title: OpenProject Documentation
priority: 999
description: Help and documentation for OpenProject Community Edition, Enterprise on-premises and Enterprise cloud.
robots: index, follow
keywords: help, documentation
---
# OpenProject Documentation
<div class="alert alert-info" role="alert">
**Note**: To better read our OpenProject Documentation, please go to [www.openproject.org/docs/](https://www.openproject.org/docs/).
</div>
> **Note**: To better read our OpenProject Documentation, please go to [www.openproject.org/docs/](https://www.openproject.org/docs/).
## Installation

@ -2,7 +2,6 @@
sidebar_navigation:
title: API documentation
priority: 910
robots: index, follow
---
# OpenProject API

@ -3,7 +3,6 @@ sidebar_navigation:
title: FAQ
priority: 001
description: Frequently asked questions regarding the API of OpenProject
robots: index, follow
keywords: API FAQ, API v3, RestAPI, interface, connector
---

@ -3,7 +3,6 @@ sidebar_navigation:
title: BIM guide
priority: 975
description: User guide for the OpenProject BIM Edition.
robots: index, follow
keywords: BIM user guide
---
# BIM guide
@ -12,11 +11,9 @@ Welcome to the OpenProject user guide for Building Information Modeling (BIM) wi
On top of the general project management functionalities, OpenProject BIM enables construction teams to better plan, communicate and collaborate in their building projects. OpenProject BIM includes a 3D model viewer (IFC viewer), support of the BIM collaboration format (BCF) for BIM issue management, and much more powerful features, e.g. a [Revit integration](revit-add-in).
<div class="alert alert-info" role="alert">
**Note**: This guide only covers the specific [BIM features and functionalities of OpenProject](https://www.openproject.org/bim-project-management/). To learn more about the core features for project management of OpenProject (which are included in the BIM Edition as well), please visit our [User Guide](../user-guide/).
> **Note**: This guide only covers the specific [BIM features and functionalities of OpenProject](https://www.openproject.org/bim-project-management/). To learn more about the core features for project management of OpenProject (which are included in the BIM Edition as well), please visit our [User Guide](../user-guide/).
</div>
![BIM Project Management](demo_project_teaser_bim.jpg)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 189 KiB

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 310 KiB

After

Width:  |  Height:  |  Size: 99 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 372 KiB

After

Width:  |  Height:  |  Size: 120 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 9.0 KiB

@ -3,7 +3,6 @@ sidebar_navigation:
title: BIM issue management
priority: 200
description: How to use OpenProject BIM Issue Management.
robots: index, follow
keywords: BIM, BCF, IFC, BIM Issue Management, BCF-Management
---

Binary file not shown.

Before

Width:  |  Height:  |  Size: 435 KiB

After

Width:  |  Height:  |  Size: 128 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 312 KiB

After

Width:  |  Height:  |  Size: 120 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 381 KiB

After

Width:  |  Height:  |  Size: 116 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 111 KiB

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 486 KiB

After

Width:  |  Height:  |  Size: 148 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 158 KiB

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 39 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 610 KiB

After

Width:  |  Height:  |  Size: 200 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 381 KiB

After

Width:  |  Height:  |  Size: 115 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 64 KiB

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 92 KiB

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 82 KiB

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 349 KiB

After

Width:  |  Height:  |  Size: 126 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.2 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

@ -3,7 +3,6 @@ sidebar_navigation:
title: IFC viewer
priority: 300
description: How to use the OpenProject IFC-Viewer.
robots: index, follow
keywords: BIM, BCF, IFC, Viewer
---

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 MiB

After

Width:  |  Height:  |  Size: 810 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 370 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 351 KiB

After

Width:  |  Height:  |  Size: 107 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 449 KiB

After

Width:  |  Height:  |  Size: 125 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 350 KiB

After

Width:  |  Height:  |  Size: 105 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 259 KiB

After

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.2 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.2 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.2 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 383 KiB

After

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 358 KiB

After

Width:  |  Height:  |  Size: 110 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 457 KiB

After

Width:  |  Height:  |  Size: 124 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 432 KiB

After

Width:  |  Height:  |  Size: 119 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 276 KiB

After

Width:  |  Height:  |  Size: 92 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.2 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 418 KiB

After

Width:  |  Height:  |  Size: 128 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.1 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.2 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 775 KiB

After

Width:  |  Height:  |  Size: 231 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 320 KiB

After

Width:  |  Height:  |  Size: 92 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.2 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 269 KiB

After

Width:  |  Height:  |  Size: 88 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.2 KiB

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 453 KiB

After

Width:  |  Height:  |  Size: 155 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 425 KiB

After

Width:  |  Height:  |  Size: 143 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 420 KiB

After

Width:  |  Height:  |  Size: 145 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 439 KiB

After

Width:  |  Height:  |  Size: 150 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 360 KiB

After

Width:  |  Height:  |  Size: 118 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 447 KiB

After

Width:  |  Height:  |  Size: 154 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 407 KiB

After

Width:  |  Height:  |  Size: 140 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 332 KiB

After

Width:  |  Height:  |  Size: 103 KiB

@ -3,7 +3,6 @@ sidebar_navigation:
title: Revit add-in
priority: 100
description: How to use the OpenProject BIM - Revit add-in.
robots: index, follow
keywords: BIM, BCF, IFC, Viewer
---
@ -15,9 +14,7 @@ To download the latest version (v2.2.3) of our OpenProject Revit AddIn click her
<div class="alert alert-info" role="alert">
**Note**: OpenProject BIM Issue Management is a Premium Feature and can only be used with [Enterprise cloud](../../enterprise-guide/enterprise-cloud-guide/) or [Enterprise on-premises](../../enterprise-guide/enterprise-on-premises-guide/). An upgrade from the free Community Edition is easily possible.
</div>
> **Note**: OpenProject BIM Issue Management is a Premium Feature and can only be used with [Enterprise cloud](../../enterprise-guide/enterprise-cloud-guide/) or [Enterprise on-premises](../../enterprise-guide/enterprise-on-premises-guide/). An upgrade from the free Community Edition is easily possible.
## Before usage

Binary file not shown.

Before

Width:  |  Height:  |  Size: 407 KiB

After

Width:  |  Height:  |  Size: 140 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 40 KiB

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 35 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 16 KiB

@ -2,7 +2,6 @@
sidebar_navigation:
title: Development
priority: 920
robots: index, follow
---
# Develop OpenProject
@ -95,7 +94,7 @@ This code of conduct is adapted from the [Contributor Covenant](https://www.cont
If you want to contribute to OpenProject, please make sure to accept our Contributor License Agreement first. The contributor license agreement documents the rights granted by contributors to OpenProject.
[Read and accept the Contributor License Agreement here.](https://www.openproject.org/contributor-license-agreement/)
[Read and accept the Contributor License Agreement here.](https://www.openproject.org/legal/contributor-license-agreement/)
# Additional resources

@ -2,7 +2,6 @@
sidebar_navigation:
title: Development concepts
description: Get an overview of the development process and concepts at OpenProject
robots: index, follow
keywords: development concepts, big picture
---

@ -2,7 +2,6 @@
sidebar_navigation:
title: Application architecture
description: An introduction of the architecture used at OpenProject and their interplay.
robots: index, follow
keywords: architecture overview, hybrid application, Ruby on Rails, Angular
---

@ -2,7 +2,6 @@
sidebar_navigation:
title: Dynamically generated forms
description: An introduction on how to generate forms from an API form object
robots: index, follow
keywords: concept, forms, dynamic forms, schemas
---

@ -2,7 +2,6 @@
sidebar_navigation:
title: HAL+JSON resources
description: Get an overview of how inline-editing of resources works
robots: index, follow
keywords: development concepts, HAL, JSON, hal resources, API requests
---

@ -2,7 +2,6 @@
sidebar_navigation:
title: Infrastructure overview
description: An introduction of the infrastructure architecture used at OpenProject.
robots: index, follow
keywords: infrastructure
---

@ -2,7 +2,6 @@
sidebar_navigation:
title: Inline editing
description: Get an overview of how inline-editing of resources works
robots: index, follow
keywords: development concepts, inline editing, edit forms
---

@ -2,7 +2,6 @@
sidebar_navigation:
title: Permissions
description: Get an overview of how roles and permissions are handled in the OpenProject application code
robots: index, follow
keywords: permissions, roles, RBAC
---

@ -2,7 +2,6 @@
sidebar_navigation:
title: Queries
description: An introduction to queries in OpenProject and their use in the frontend
robots: index, follow
keywords: queries, query space, work package views
---

@ -2,7 +2,6 @@
sidebar_navigation:
title: Resource changesets
description: Get an overview of how frontend changesets work when editing hal resources
robots: index, follow
keywords: changesets, editing, HAL resources
---

@ -2,7 +2,6 @@
sidebar_navigation:
title: Schemas
description: An introduction to resource schemas and how they are tied to editable resources
robots: index, follow
keywords: concept, schemas, resource schemas
---

@ -2,7 +2,6 @@
sidebar_navigation:
title: State management
description: Get an overview of how frontend state management works
robots: index, follow
keywords: state management, stores, input states
---

@ -2,7 +2,6 @@
sidebar_navigation:
title: Translations
description: Get an overview of how translations are being used in OpenProject, and how they end up in the frontend
robots: index, follow
keywords: translations, I18n, localization, locales, languages
---

@ -3,7 +3,6 @@ sidebar_navigation:
title: Contribute to documentation
priority: 999
description: Overview of the OpenProject documentation
robots: index, follow
keywords: contribution, documentation, documentation process
---

@ -1,9 +1,8 @@
---
sidebar_navigation:
title: Support for contribution
priority: 996
priority: 600
description: What to do if you need help or support for your contribution
robots: index, follow
keywords: help, support, documentation process, documentation
---

@ -0,0 +1,106 @@
---
sidebar_navigation:
title: Internal docs contributor
priority: 800
description: Quick guide for internal team members that have write permissions
keywords: contribution, documentation, documentation process
---
# Documentation process for internal team members
This guide describes how internal team members with write permissions can contribute to the OpenProject documentation.
## Prerequisites
1. [The contributor has a user account on GitHub.com](https://www.openproject.org/docs/development/contribution-documentation/documentation-process/#step-1-create-user-account-on-githubcom)
2. The contributor has write permissions on the [OpenProject repository](https://github.com/opf/openproject)
3. [Software Typora editor installed](https://www.openproject.org/docs/development/contribution-documentation/documentation-process/#step-2-install-typora)
4. [Software GitHub Desktop installed](https://www.openproject.org/docs/development/contribution-documentation/documentation-process/#step-3-install-github-desktop)
## Step 1: Clone the OpenProject repository in GitHub Desktop
Before you can make changes you need to create a local clone of the OpenProject repository on your local computer. Open GitHub Desktop and navigate to **File -> Clone repository**.
![clone repository](clone-repository.png)
In the modal window select the repository ""*opf/openproject*"". Also select a folder on your computer for the cloned repository. Click **Clone**.
![select cloned repository](select-cloned-repository.png)
## Step 2: Update local repository (fetch origin)
> **Important**: Before you make changes always update your local repository.
1. Select the branch you want to work on, e.g.`release/12.1` in the main toolbar.
2. Click on the button **Fetch origin** in the main toolbar.
![fetch origin in github desktop](fetch-origin-in-github-desktop.png)
## Step 3: Create a new Git branch for your change
1. Select the latest release branch e.g.`release/12.1` as the current branch.
![create new branch - step 1](create-new-branch-step-1.png)
2. In the same drop down click on **New branch**.
3. In the next modal window insert a branch name that describes your changes. Also select the branch you want to work on, e.g. `release/12.1`. The click the button **Create branch**.
![create a new branch step 2](create-new-branch-step-2.png)
## Step 4: Open the files you want to change in Typora
In Typora open the files you want to change (File -> Open). In the file picker navigate to the local folder you selected in the step 1.
## Step 5: Make the changes in Typora and save the file
The Typora editor makes it quite easy to make changes to the file. After you made your changes do not forgot to save.
## Step 6: Commit the change to your local repository in GitHub Desktop
Open GitHub Desktop. Here you can see all the changes you made in your local repository.
![commit history in github desktop](commit-history-in-github-desktop.png)
Add a commit message that best describes your change. This description should allow other users to easily understand the change you made.
## Step 7: Push your changes to GitHub.com
At the moment your change is only available in your local repository. To make it available on GitHub.com you need upload (push) by pressing the button **Push origin**.
![push origin in github desktop](push-origin-in-github-desktop.png)
## Step 8: Create a pull request
A pull request is a workflow to ask for a review from the OpenProject team. With a pull request you basically ask a team member to check your changes and to merge it to the branch you want your change to merged to, e.g. `release/12.1` . After you pushed your local changes to your own repository click the button **Create Pull Request**.
![](create-pull-request-github-desktop.png)
In the first dropdown select the base branch you want your work to be merged in e.g. `release/12.1`. In the second dropdown select the branch you created in step 3 which contains your changes.
![comparing-changes.png](comparing-changes.png)
In the description field of the pull request enter a summary for the changes you made. If there is already a work package on https://community.openproject.org you can also add this to the description. This adds a relation between your pull request and the work package.
## Step 9: Request review
Select the label "*documentation*".
![add documentation label for pull request](add-documentation-label-pull-requests.png)
In the field "*Reviewers*" select "*opf/doc-writers".*
![select reviewer for documentation](select-reviewer-for-documentation.png)
## Step 10: Wait for feedback from the reviewers
... and hopefully it is all LGTM which means "Looks good to me(rge). Congrats to your first contribution to the OpenProject documentation. We appreciate your effort :-)
## Additional notes for working on the legal docs
* We always deploy the [main branch](https://github.com/opf/legal/tree/main) on our [website](https://www.openproject.org/legal/). This deployment needs to be manually triggered by the marketing team.
* If you want to make minor changes you don't need a review do this directly in the main branch without creating a new branch and new pull request.
* If you need a review you need to create a new branch from the main branch. The branch `release/12.1` only exists in the repository opf/openproject (OpenProject software).

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save