pull/8030/head
birthe 5 years ago
commit b90ea49e42
  1. BIN
      .DS_Store
  2. 19
      .dockerignore
  3. 47
      Dockerfile
  4. 2
      Gemfile
  5. 7
      Gemfile.lock
  6. 3
      app/assets/stylesheets/content/_attributes_key_value.sass
  7. 5
      app/services/work_packages/set_attributes_service.rb
  8. 7
      config/environments/development.rb
  9. 11
      config/locales/crowdin/ar.yml
  10. 11
      config/locales/crowdin/bg.yml
  11. 11
      config/locales/crowdin/ca.yml
  12. 11
      config/locales/crowdin/cs.yml
  13. 11
      config/locales/crowdin/da.yml
  14. 11
      config/locales/crowdin/de.yml
  15. 37
      config/locales/crowdin/el.yml
  16. 11
      config/locales/crowdin/es.yml
  17. 11
      config/locales/crowdin/fi.yml
  18. 11
      config/locales/crowdin/fil.yml
  19. 11
      config/locales/crowdin/fr.yml
  20. 11
      config/locales/crowdin/hr.yml
  21. 15
      config/locales/crowdin/hu.yml
  22. 11
      config/locales/crowdin/id.yml
  23. 11
      config/locales/crowdin/it.yml
  24. 11
      config/locales/crowdin/ja.yml
  25. 4
      config/locales/crowdin/js-el.yml
  26. 2
      config/locales/crowdin/js-hu.yml
  27. 11
      config/locales/crowdin/ko.yml
  28. 11
      config/locales/crowdin/lt.yml
  29. 11
      config/locales/crowdin/nl.yml
  30. 11
      config/locales/crowdin/no.yml
  31. 11
      config/locales/crowdin/pl.yml
  32. 11
      config/locales/crowdin/pt-BR.yml
  33. 11
      config/locales/crowdin/pt.yml
  34. 11
      config/locales/crowdin/ro.yml
  35. 11
      config/locales/crowdin/ru.yml
  36. 11
      config/locales/crowdin/sk.yml
  37. 11
      config/locales/crowdin/sv.yml
  38. 15
      config/locales/crowdin/tr.yml
  39. 11
      config/locales/crowdin/uk.yml
  40. 11
      config/locales/crowdin/zh-CN.yml
  41. 11
      config/locales/crowdin/zh-TW.yml
  42. 108
      docker-compose.yml
  43. 18
      docker/entrypoint.sh
  44. 12
      docker/mysql-to-postgres/bin/build
  45. 3
      docker/precompile-assets.sh
  46. 8
      docker/proxy.conf.erb
  47. 11
      docker/seeder
  48. 8
      docker/supervisord
  49. 8
      docker/worker
  50. BIN
      docs/.DS_Store
  51. 8
      docs/cloud-edition-guide/manage-subscription/README.md
  52. 2
      docs/enterprise-edition-guide/enterprise-trial/README.md
  53. BIN
      docs/getting-started/.DS_Store
  54. 2
      docs/getting-started/README.md
  55. 27
      docs/getting-started/boards-introduction/README.md
  56. 4
      docs/getting-started/gantt-chart-introduction/README.md
  57. 6
      docs/getting-started/invite-members/README.md
  58. 9
      docs/getting-started/my-page/README.md
  59. 8
      docs/getting-started/projects/README.md
  60. 15
      docs/installation-and-operations/configuration/database/README.md
  61. 29
      docs/installation-and-operations/configuration/server/README.md
  62. 47
      docs/installation-and-operations/installation/docker/README.md
  63. 11
      docs/installation-and-operations/operation/backing-up/README.md
  64. 14
      docs/installation-and-operations/operation/restoring/README.md
  65. 8
      docs/system-admin-guide/enumerations/README.md
  66. 4
      docs/system-admin-guide/users-permissions/groups/README.md
  67. 5
      docs/system-admin-guide/users-permissions/users/README.md
  68. 6
      docs/user-guide/README.md
  69. 9
      docs/user-guide/activity/README.md
  70. 14
      docs/user-guide/backlogs-scrum/README.md
  71. 12
      docs/user-guide/backlogs-scrum/work-with-backlogs/README.md
  72. 2
      docs/user-guide/forums/README.md
  73. 2
      docs/user-guide/meetings/README.md
  74. 2
      docs/user-guide/members/README.md
  75. 2
      docs/user-guide/news/README.md
  76. 2
      docs/user-guide/projects/project-settings/activities-time-tracking/README.md
  77. 2
      docs/user-guide/projects/project-settings/custom-fields/README.md
  78. 2
      docs/user-guide/projects/project-settings/repository/README.md
  79. 2
      docs/user-guide/repository/README.md
  80. 2
      docs/user-guide/roadmap/README.md
  81. 11
      docs/user-guide/time-and-costs/cost-tracking/README.md
  82. 2
      docs/user-guide/time-and-costs/reporting/README.md
  83. 2
      docs/user-guide/wiki/README.md
  84. 2
      docs/user-guide/work-packages/README.md
  85. 8
      frontend/src/app/modules/time_entries/form/form.component.html
  86. 30
      lib/open_project/custom_styles/color_themes.rb
  87. 2
      modules/backlogs/config/locales/crowdin/el.yml
  88. 4
      modules/bcf/config/locales/crowdin/el.yml
  89. 42
      modules/bim_seeder/app/seeders/bim_seeder/basic_data/custom_style_seeder.rb
  90. 1
      modules/bim_seeder/app/seeders/bim_seeder/basic_data_seeder.rb
  91. 2
      modules/grids/config/locales/crowdin/js-el.yml
  92. 2
      modules/grids/config/locales/crowdin/js-tr.yml
  93. 2
      modules/xls_export/lib/open_project/xls_export/xls_views/cost_entry_table.xls.rb

BIN
.DS_Store vendored

Binary file not shown.

@ -1,6 +1,25 @@
.git
.dockerignore
.bundle
.env*
.buildpacks
.*.yml
*.swp
.*ignore
*.md
*.log
Vagrantfile
Dockerfile
Guardfile
docker-compose.*
browserslist
docs
extra
features
help
log/*.log
spec
spec_legacy
tmp
frontend/node_modules
# travis

@ -1,8 +1,14 @@
FROM ruby:2.6-stretch AS pgloader
RUN apt-get update -qq && apt-get install -y libsqlite3-dev make curl gawk freetds-dev libzip-dev
COPY docker/mysql-to-postgres/bin/build /tmp/build-pgloader
RUN /tmp/build-pgloader && rm /tmp/build-pgloader
FROM ruby:2.6-stretch
MAINTAINER operations@openproject.com
ENV NODE_VERSION "10.15.0"
ENV BUNDLER_VERSION "2.0.2"
ENV BUNDLE_PATH__SYSTEM=false
ENV APP_USER app
ENV APP_PATH /app
ENV APP_DATA_PATH /var/openproject/assets
@ -17,20 +23,17 @@ ENV RAILS_CACHE_STORE memcache
ENV OPENPROJECT_INSTALLATION__TYPE docker
ENV NEW_RELIC_AGENT_ENABLED false
ENV ATTACHMENTS_STORAGE_PATH $APP_DATA_PATH/files
ENV BUNDLE_PATH__SYSTEM=false
ENV PGLOADER_DEPENDENCIES "libsqlite3-dev make curl gawk freetds-dev libzip-dev"
# Set a default key base, ensure to provide a secure value in production environments!
ENV SECRET_KEY_BASE OVERWRITE_ME
COPY --from=pgloader /usr/local/bin/pgloader-ccl /usr/local/bin/
# install node + npm
RUN curl https://nodejs.org/dist/v${NODE_VERSION}/node-v${NODE_VERSION}-linux-x64.tar.gz | tar xzf - -C /usr/local --strip-components=1
RUN apt-get update -qq && \
DEBIAN_FRONTEND=noninteractive apt-get install -y \
postgresql-client \
mysql-client \
poppler-utils \
unrtf \
tesseract-ocr \
@ -38,18 +41,10 @@ RUN apt-get update -qq && \
memcached \
postfix \
postgresql \
$PGLOADER_DEPENDENCIES \
apache2 \
supervisor && \
apt-get clean && rm -rf /var/lib/apt/lists/*
# pgloader
ENV CCL_DEFAULT_DIRECTORY /opt/ccl
COPY docker/mysql-to-postgres/bin/build /tmp/build-pgloader
RUN /tmp/build-pgloader && rm /tmp/build-pgloader
# Add MySQL-to-Postgres migration script to path (used in entrypoint.sh)
COPY docker/mysql-to-postgres/bin/migrate-mysql-to-postgres /usr/local/bin/
# Set up pg defaults
RUN echo "host all all 0.0.0.0/0 md5" >> /etc/postgresql/9.6/main/pg_hba.conf
RUN echo "listen_addresses='*'" >> /etc/postgresql/9.6/main/postgresql.conf
@ -70,27 +65,33 @@ COPY modules ./modules
# OpenProject::Version is required by module versions in gemspecs
RUN mkdir -p lib/open_project
COPY lib/open_project/version.rb ./lib/open_project/
RUN bundle install --deployment --path vendor/bundle --with="docker opf_plugins" --without="test development" --jobs=8 --retry=3
RUN bundle install --deployment --path vendor/bundle --no-cache \
--with="docker opf_plugins" --without="test development" --jobs=8 --retry=3 && \
rm -rf vendor/bundle/ruby/*/cache && rm -rf vendor/bundle/ruby/*/gems/*/spec && rm -rf vendor/bundle/ruby/*/gems/*/test
# Finally, copy over the whole thing
COPY . $APP_PATH
COPY . .
# Re-use packager database.yml
RUN cp ./packaging/conf/database.yml ./config/database.yml
# Add MySQL-to-Postgres migration script to path (used in entrypoint.sh)
RUN cp ./docker/mysql-to-postgres/bin/migrate-mysql-to-postgres /usr/local/bin/
# Ensure OpenProject starts with the docker group of gems
RUN sed -i "s|Rails.groups(:opf_plugins)|Rails.groups(:opf_plugins, :docker)|" config/application.rb
# Ensure we can write in /tmp/op_uploaded_files (cf. #29112)
RUN mkdir -p /tmp/op_uploaded_files/ && chown -R $APP_USER:$APP_USER /tmp/op_uploaded_files/
# Re-use packager database.yml
COPY packaging/conf/database.yml ./config/database.yml
# Run the npm postinstall manually after it was copied
# Then, npm install node modules
# Handle the assets precompilation
RUN bash docker/precompile-assets.sh
# ports
# Expose ports for apache and postgres
EXPOSE 80 5432
# volumes to export
# Expose the postgres data directory and OpenProject data directory as volumes
VOLUME ["$PGDATA", "$APP_DATA_PATH"]
# Set a custom entrypoint to allow for privilege dropping and one-off commands
ENTRYPOINT ["./docker/entrypoint.sh"]
# Set default command to launch the all-in-one configuration supervised by supervisord
CMD ["./docker/supervisord"]

@ -234,6 +234,8 @@ group :ldap do
end
group :development do
gem 'listen', '~> 3.2.1' # Use for event-based reloaders
gem 'faker'
gem 'letter_opener'
gem 'livingstyleguide', '~> 2.1.0'

@ -598,6 +598,9 @@ GEM
addressable (~> 2.3)
letter_opener (1.7.0)
launchy (~> 2.2)
listen (3.2.1)
rb-fsevent (~> 0.10, >= 0.10.3)
rb-inotify (~> 0.9, >= 0.9.10)
livingstyleguide (2.1.0)
minisyntax (>= 0.2.5)
redcarpet
@ -777,6 +780,9 @@ GEM
rainbow (3.0.0)
raindrops (0.19.0)
rake (13.0.1)
rb-fsevent (0.10.3)
rb-inotify (0.10.0)
ffi (~> 1.0)
rbtree3 (0.5.0)
rdoc (6.1.1)
recaptcha (5.1.0)
@ -1022,6 +1028,7 @@ DEPENDENCIES
ladle
launchy (~> 2.4.3)
letter_opener
listen (~> 3.2.1)
livingstyleguide (~> 2.1.0)
lograge (~> 0.10.0)
meta-tags (~> 2.11.0)

@ -88,6 +88,9 @@
font-weight: bold
line-height: 27px
&.-required:after
@extend %required-star
.attributes-map.-minimal-keys &
max-width: 200px

@ -150,8 +150,9 @@ class WorkPackages::SetAttributesService < ::BaseServices::SetAttributes
end
def set_fixed_version_to_nil
unless work_package.fixed_version &&
work_package.project.shared_versions.include?(work_package.fixed_version)
if work_package.fixed_version &&
!(work_package.project &&
work_package.project.shared_versions.include?(work_package.fixed_version))
work_package.fixed_version = nil
end
end

@ -41,11 +41,8 @@ OpenProject::Application.configure do
# Do not eager load code on boot.
config.eager_load = false
# File watcher
# using ActiveSupport::EventedFileUpdateChecker depends on listen which depends on fsevent
# which seems to be prone to creating zombie process (+200 of them) which can cause
# the process limit (on mac) to be reached which causes the system to need a reboot.
config.file_watcher = ActiveSupport::FileUpdateChecker
# Asynchronous file watcher
config.file_watcher = ActiveSupport::EventedFileUpdateChecker
# Store uploaded files on the local file system (see config/storage.yml for options)
config.active_storage.service = :local

@ -2625,6 +2625,17 @@ ar:
User limit reached. You cannot activate any more users. Please <a href="%{upgrade_url}">upgrade your plan</a> or block members to allow for additional users.
warning_user_limit_reached_instructions: >
You reached your user limit (%{current}/%{max} active users). Please contact sales@openproject.com to upgrade your Enterprise Edition plan and add additional users.
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "عناصر القائمة"
menu_item_setting: "الظهور"
wiki_menu_item_for: "عنصر القائمة \"%{title}\""

@ -2535,6 +2535,17 @@ bg:
User limit reached. You cannot activate any more users. Please <a href="%{upgrade_url}">upgrade your plan</a> or block members to allow for additional users.
warning_user_limit_reached_instructions: >
You reached your user limit (%{current}/%{max} active users). Please contact sales@openproject.com to upgrade your Enterprise Edition plan and add additional users.
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "Menu item"
menu_item_setting: "Видимост"
wiki_menu_item_for: "Menu item for wikipage \"%{title}\""

@ -2533,6 +2533,17 @@ ca:
User limit reached. You cannot activate any more users. Please <a href="%{upgrade_url}">upgrade your plan</a> or block members to allow for additional users.
warning_user_limit_reached_instructions: >
You reached your user limit (%{current}/%{max} active users). Please contact sales@openproject.com to upgrade your Enterprise Edition plan and add additional users.
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "Element de menú"
menu_item_setting: "Visibilitat"
wiki_menu_item_for: "Element de menú per a la pàgina wiki \"%{title}\""

@ -2579,6 +2579,17 @@ cs:
Váš limit počtu uživatelů byl dosažen. Nelze aktivovat více uživatelů. Prosím <a href="%{upgrade_url}">upgradujte váš cenový plán</a> nebo zablokujte některé stávající členy pro přidání dalších uživatelů.
warning_user_limit_reached_instructions: >
Limit počtu uživatelů (%{current}/%{max} aktivních uživatelů) dosažen. Prosím kontaktujte sales@openproject.com a upgradujte vaši Enterprise Edition a přidejte další uživatele.
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "Položka nabídky"
menu_item_setting: "Viditelnost"
wiki_menu_item_for: "Položka nabídky pro stránku wiki \"%{title}\""

@ -2533,6 +2533,17 @@ da:
User limit reached. You cannot activate any more users. Please <a href="%{upgrade_url}">upgrade your plan</a> or block members to allow for additional users.
warning_user_limit_reached_instructions: >
You reached your user limit (%{current}/%{max} active users). Please contact sales@openproject.com to upgrade your Enterprise Edition plan and add additional users.
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "Menupunkt"
menu_item_setting: "Synlighed"
wiki_menu_item_for: "Menupunkt for wikipage \"%{title}\""

@ -2532,6 +2532,17 @@ de:
Nutzerlimit erreicht. Sie können keine weiteren Nutzer aktivieren. Bitte <a href="%{upgrade_url}">upgraden Sie Ihren Tarif</a> oder blockieren Sie Mitglieder, um Platz für weitere Nutzer zu schaffen.
warning_user_limit_reached_instructions: >
Du hast dein Nutzerlimit erreicht (%{current}/%{max} active users). Bitte kontaktiere sales@openproject.com um deinen Enterprise Edition Plan upzugraden und weitere Nutzer hinzuzufügen.
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "Menüpunkt"
menu_item_setting: "Sichtbarkeit"
wiki_menu_item_for: "Menüpunkt für die Wikiseite \"%{title}\""

@ -1032,7 +1032,7 @@ el:
rename_groups: "Μετονομασία ομάδων χαρακτηριστικών"
project_filters:
description_html: "Το φιλτράρισμα και η ταξινόμηση σε προσαρμοσμένα πεδία είναι μια λειτουργία έκδοσης για επιχειρήσεις."
enumeration_activities: "Time tracking activities"
enumeration_activities: "Δραστηριότητες καταγραφής χρόνου"
enumeration_work_package_priorities: "Προτεραιότητες πακέτου εργασίας"
enumeration_reported_project_statuses: "Αναφερόμενη κατάσταση έργου"
error_auth_source_sso_failed: "Το Single Sign-On (SSO) για το χρήση '%{value}' απέτυχε"
@ -1060,7 +1060,7 @@ el:
error_journal_attribute_not_present: "Το ημερολόγιο δεν περιέχει το χαρακτηριστικό %{attribute}."
error_pdf_export_too_many_columns: "Επιλέχθηκαν πάρα πολλές στήλες για εξαγωγή σε PDF. Παρακαλούμε μειώστε τον αριθμό των στηλών."
error_pdf_failed_to_export: "Η εξαγωγή σε PDF δεν ήταν δυνατό να αποθηκευτεί: %{error}"
error_token_authenticity: 'Unable to verify Cross-Site Request Forgery token. Did you try to submit data on multiple browsers or tabs? Please close all tabs and try again.'
error_token_authenticity: 'Δεν ήταν δυνατή η επαλήθευση του Cross-Site Request Forgery token. Προσπαθήσατε να υποβάλετε δεδομένα σε πολλαπλούς περιηγητές ή καρτέλες; Παρακαλούμε κλείστε όλες τις καρτέλες και δοκιμάστε ξανά.'
error_work_package_done_ratios_not_updated: "Η αναλογίες ολοκληρωμένων πακέτων εργασίας δεν έχουν ενημερωθεί."
error_work_package_not_found_in_project: "Το πακέτο εργασίας δεν βρέθηκε ή δεν ανοίκει σε αυτό το έργο"
error_must_be_project_member: "πρέπει να είναι μέλος έργου"
@ -1104,7 +1104,7 @@ el:
pdf_with_descriptions_and_attachments: "PDF με περιγραφές και συνημμένα"
pdf_with_attachments: "PDF με συνημμένα"
image:
omitted: "Image not exported."
omitted: "Η εικόνα δεν εξήχθη."
extraction:
available:
pdftotext: "Το Pdftotext είναι διαθέσιμο (προαιρετικό)"
@ -2035,7 +2035,7 @@ el:
path_encoding: "Κωδικοποίηση μονοπατιού"
go_to_revision: "Πηγαίνετε στην αναθεώρηση"
managed_remote: "Τα διαχειριζόμενα αποθετήρια για αυτό τον προμηθευτή χειρίζονται απομακρυσμένα."
managed_remote_note: "Οι πληροφορίες για το URL και το μονοπάτι αυτού του αποθετηρίου δεν είναι διαθέσιμες πριν την δημιουργία του."
managed_remote_note: "Οι πληροφορίες για το URL και το μονοπάτι αυτού του αποθετηρίου δεν είναι διαθέσιμα πριν την δημιουργία του."
managed_url: "Διαχειριζόμενο URL"
settings:
automatic_managed_repos_disabled: "Απενεργοποίηση αυτόματης δημιουργίας"
@ -2206,7 +2206,7 @@ el:
array:
sentence_connector: "και"
skip_last_comma: "ψευδές"
text_accessibility_hint: "The accessibility mode is designed for users who are blind, motorically handicaped or have a bad eyesight. For the latter focused elements are specially highlighted. Please notice, that the Backlogs module is not available in this mode."
text_accessibility_hint: "Ο τρόπος προσβασιμότητας έχει σχεδιαστεί για χρήστες τυφλούς, με κινητικά προβλήματα ή με κακή όραση. Για τα τελευταία αυτά τα στοιχεία είναι ειδικά επισημασμένα. Σημειώστε ότι η ενότητα Backlogs δεν είναι διαθέσιμη σε αυτή τη λειτουργία."
text_access_token_hint: "Τα tokens πρόσβασης σας επιτρέπουν να δώσετε πρόσβαση σε εξωτερικές εφαρμογές σε πόρους μέσα στο OpenProject."
text_analyze: "Περαιτέρω ανάλυση: %{subject}"
text_are_you_sure: "Είστε σίγουρος/η;"
@ -2237,7 +2237,7 @@ el:
text_destroy: "Διαγραφή"
text_destroy_with_associated: "Υπάρχουν επιπλέον αντικείμενα μαζί με το πακέτο εργασίας που πρόκειται να διαγραφεί. Τα αντικείμενα αυτά είναι των παρακάτω τύπων:"
text_destroy_what_to_do: "Τι θέλετε να κάνετε;"
text_diff_truncated: "... This diff was truncated because it exceeds the maximum size that can be displayed."
text_diff_truncated: "... Αυτό το diff περικόπηκε επειδή υπερβαίνει το μέγιστο μέγεθος που μπορεί να εμφανιστεί."
text_email_delivery_not_configured: "Η παράδοσης email δεν έχει διαμορφωθεί και οι ειδοποιήσεις είναι απενεργοποιημένες. Διαμορφώστε τον SMTP διακομιστή στο config/configuration.yml και επανεκκινήστε την εφαρμογή για να τα ενεργοποιήσετε."
text_enumeration_category_reassign_to: "Επανεκχώρηση τους σε αυτή την τιμή:"
text_enumeration_destroy_question: "%{count} αντικείμενα έχουν ανατεθεί σε αυτή την τιμή."
@ -2346,7 +2346,7 @@ el:
end: "Λήξη"
errors:
not_implemented: "Το χρονοδιάγραμμα δεν μπόρεσε να επεξεργαστεί γιατί χρησιμοποιεί μια λειτουργία που δεν μπορεί να εφαρμοστεί ακόμη."
report_comparison: "The timeline could not render the configured comparisons. Please check the appropriate section in the configuration, resetting it can help solve this problem."
report_comparison: "Το χρονοδιάγραμμα δεν θα μπορούσε να αποδώσει τις διαμορφωμένες συγκρίσεις. Ελέγξτε την κατάλληλη ενότητα στη διαμόρφωση, επαναφέροντας την μπορεί να βοηθήσει στην επίλυση αυτού του προβλήματος."
report_epicfail: "Το χρονοδιάγραμμα δεν ήταν δυνατό να φορτωθεί λόγω απροσδόκητου σφάλματος."
report_timeout: "Το χρονοδιάγραμμα δεν ήταν δυνατό να φορτωθεί μέσα σε ένα λογικό χρονικό πλαίσιο."
filter:
@ -2531,6 +2531,17 @@ el:
Επετεύχθη το όριο χρηστών. Δεν μπορείτε να ενεργοποιήσετε άλλους χρήστες. Παρακαλούμε <a href="%{upgrade_url}">αναβαθμίστε το πλάνο σας</a> ή αποκλείστε μέλη για να επιτρέψετε περισσότερους χρήστες.
warning_user_limit_reached_instructions: >
Έχετε φτάσει το όριο χρηστών (%{current}/%{max} ενεργοί χρήστες). Παρακαλούμε επικοινωνήστε με το sales@openproject.com για να αναβαθμίσετε σε Έκδοση για Επιχειρήσεις και να προσθέσετε επιπλέον χρήστες.
0: >
warning_bar:
protocol_mismatch:
title: 'Δεν ταιριάζουν οι ρυθμίσεις πρωτοκόλλου'
text_html: >
Οι εφαρμογή τρέχει με τη ρύθμιση πρωτοκόλλου ορισμένη σε <code>%{set_protocol}</code>, αλλά το αίτημα είναι ένα <code>%{actual_protocol}</code> αίτημα. Αυτό θα έχει ως αποτέλεσμα σφάλματα! Πηγαίνετε στις <a href="%{setting_path}">Ρυθμίσεις Συστήματος</a> και αλλάξτε τη ρύθμιση "Πρωτόκολλο" για να το διορθώσετε.
hostname_mismatch:
title: 'Δεν ταιριάζουν οι ρυθμίσεις ονόματος εξυπηρετητή'
text_html: >
Οι εφαρμογή τρέχει με τη ρύθμιση ονόματος εξυπηρετητή ορισμένη σε <code>%{set_hostname}</code>, αλλά το αίτημα είναι ένα <code>%{actual_hostname}</code> όνομα εξυπηρετητή. Αυτό θα έχει ως αποτέλεσμα σφάλματα! Πηγαίνετε στις <a href="%{setting_path}">Ρυθμίσεις Συστήματος</a> και αλλάξτε τη ρύθμιση "Όνομα Εξυπηρετητή" για να το διορθώσετε.
menu_item: "Αντικείμενο μενού"
menu_item_setting: "Ορατότητα"
wiki_menu_item_for: "Αντικείμενο μενού για την σελίδα wiki \"%{title}\""
@ -2578,7 +2589,7 @@ el:
unsupported_context: "Ο πόρος που δόθηκε δεν υποστηρίζεται ως πλαίσιο αναφοράς."
context_object_not_found: "Δεν ήταν δυνατή η εύρεση του πόρου που δόθηκε ως πλαίσιο αναφοράς."
validation:
done_ratio: "Done ratio cannot be set on parent work packages, when it is inferred by status or when it is disabled."
done_ratio: "Η αναλογία ολοκληρωμένων δεν μπορεί να οριστεί σε πακέτα εργασίας-γονείς, όταν καλείται με την κατάσταση ή όταν είναι απενεργοποιημένο."
due_date: "Η ημερομηνία λήξης δεν μπορεί να οριστεί σε πακέτα εργασίας-γονείς."
estimated_hours: "Οι εκτιμώμενες ώρες δεν μπορούν να οριστούν σε πακέτα εργασίας-γονείς."
invalid_user_assigned_to_work_package: "Ο επιλεγμένος χρήστης δεν επιτρέπεται να είναι '%{property}' για αυτό το πακέτο εργασίας."
@ -2603,14 +2614,14 @@ el:
server_error: 'Ο διακομιστής ταυτοποίησης συνάντησε μια απροσδόκητη κατάσταση η οποία τον απέτρεψε από την ολοκλήρωση του αιτήματος.'
temporarily_unavailable: 'Ο διακομιστής ταυτοποίησης δεν μπορεί να διαχειριστεί το αίτημα αυτή τη στιγμή λόγω προσωρινής υπερφόρτωσης ή συντήρησης του διακομιστή.'
#Configuration error messages
credential_flow_not_configured: 'Resource Owner Password Credentials flow failed due to Doorkeeper.configure.resource_owner_from_credentials being unconfigured.'
resource_owner_authenticator_not_configured: 'Resource Owner find failed due to Doorkeeper.configure.resource_owner_authenticator being unconfigured.'
credential_flow_not_configured: 'Ο κάτοχος του πόρου πιστοποιητικών κωδικών πρόσβασης απέτυχε λόγω της μη ρύθμισης του Doorkeeper.configure.resource_owner_from_credentials.'
resource_owner_authenticator_not_configured: 'Ο κάτοχος του πόρου απέτυχε εξαιτίας της μη ρύθμισης του Doorkeeper.configure.resource_owner_authenticator.'
admin_authenticator_not_configured: 'Η πρόσβαση στον πίνακα διαχείρισης απαγορεύεται επειδή το Doorkeeper.configure.admin_authenticator δεν είναι διαμορφωμένο.'
#Access grant errors
unsupported_response_type: 'Ο διακομιστής ταυτοποίησης δεν υποστηρίζει αυτό τον τύπο απόκρισης.'
#Access token errors
invalid_client: 'Client authentication failed due to unknown client, no client authentication included, or unsupported authentication method.'
invalid_grant: 'The provided authorization grant is invalid, expired, revoked, does not match the redirection URI used in the authorization request, or was issued to another client.'
invalid_client: 'Ο έλεγχος ταυτότητας με τον πελάτη απέτυχε λόγω άγνωστου πελάτη, χωρίς έλεγχο ταυτότητας πελάτη ή με μη υποστηριζόμενη μέθοδο ελέγχου ταυτότητας.'
invalid_grant: 'Η χορηγούμενη επιχορήγηση εξουσιοδότησης είναι άκυρη, έχει λήξει, ανακληθεί, δεν αντιστοιχεί στο URI ανακατεύθυνσης που χρησιμοποιήθηκε στην αίτηση εξουσιοδότησης ή έχει εκδοθεί σε άλλο πελάτη.'
unsupported_grant_type: 'Ο τύπος χορήγησης ταυτοποίησης δεν υποστηρίζεται από τον εξυπηρετητή ταυτοποίησης.'
invalid_token:
revoked: "Το token πρόσβασης ανακλήθηκε"
@ -2632,7 +2643,7 @@ el:
name: "Το όνομα τις εφαρμογής. Αυτό θα εμφανίζεται στους υπόλοιπους χρήστες μόλις γίνει η εξουσιοδότηση."
redirect_uri_html: >
Τα επιτρεπόμενα URLs στα οποία ανακατευθύνονται οι ταυτοποιημένοι χρήστες. <br/> Αν εγγράφεστε από την εφαρμογή υπολογιστή, χρησιμοποιείστε το ακόλουθο URL.
confidential: "Check if the application will be used where the client secret can be kept confidential. Native mobile apps and Single Page Apps are assumed non-confidential."
confidential: "Ελέγξτε εάν η εφαρμογή θα χρησιμοποιηθεί όταν το μυστικό πελάτη μπορεί να παραμείνει εμπιστευτικό. Οι εγγενείς εφαρμογές για κινητά και οι εφαρμογές μιας σελίδας θεωρούνται μη εμπιστευτικές."
scopes: "Επιλέξτε τα φυσικά αντικείμενα στα οποία θέλετε να δώσει πρόσβαση η εφαρμογή. Αν δεν επιλεγεί κανένα φυσικό αντικείμενο, θα υποτεθεί api_v3."
client_credential_user_id: "Προαιρετική ταυτότητα χρήστη για να υποδυθεί όταν οι πελάτες χρησιμοποιούν αυτή την εφαρμογή. Αφήστε κενό για να επιτρέψετε μόνο δημόσια πρόσβαση"
register_intro: "Αν αναπτύσσετε μια εφαρμογή πελάτη OAuth API για το OpenProject, μπορείτε να την καταχωρήσετε χρησιμοποιώντας αυτή τη φόρμα για να μπορούν να τη χρησιμοποιήσουν όλοι οι χρήστες."

@ -2531,6 +2531,17 @@ es:
Alcanzado el límite de usuarios. No se puede activar ningún usuario más. <a href="%{upgrade_url}">actualice su plan</a> o bloquee miembros para permitir usuarios adicionales.
warning_user_limit_reached_instructions: >
Has alcanzado el límite de usuarios (%{current}/%{max} usuarios activos). Por favor, contacta con sales@openproject.com para mejorar tu plan a la edición Enterprise y añadir usuarios adicionales.
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "Elemento de menú"
menu_item_setting: "Visibilidad"
wiki_menu_item_for: "Elemento de menú para wiki '%{title}'"

@ -2535,6 +2535,17 @@ fi:
User limit reached. You cannot activate any more users. Please <a href="%{upgrade_url}">upgrade your plan</a> or block members to allow for additional users.
warning_user_limit_reached_instructions: >
You reached your user limit (%{current}/%{max} active users). Please contact sales@openproject.com to upgrade your Enterprise Edition plan and add additional users.
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "Menu item"
menu_item_setting: "Visibility"
wiki_menu_item_for: "Menu item for wikipage \"%{title}\""

@ -2533,6 +2533,17 @@ fil:
User limit reached. You cannot activate any more users. Please <a href="%{upgrade_url}">upgrade your plan</a> or block members to allow for additional users.
warning_user_limit_reached_instructions: >
You reached your user limit (%{current}/%{max} active users). Please contact sales@openproject.com to upgrade your Enterprise Edition plan and add additional users.
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "Pagpipilian sa mga aytem"
menu_item_setting: "Nakikita"
wiki_menu_item_for: "Aytem na pagpipilian sa wikipage na \"%{title}\""

@ -2533,6 +2533,17 @@ fr:
Limite d'utilisateur atteinte. Vous ne pouvez plus activer d'autres utilisateurs. Veuillez <a href="%{upgrade_url}">mettre à jour votre plan</a> ou bloquez des membres pour permettre d'autres utilisateurs.
warning_user_limit_reached_instructions: >
Vous avez atteint votre limite d'utilisateurs (%{current}/%{max} utilisateurs actifs). Veuillez contacter sales@openproject.com pour mettre à jour votre plan Enterprise Edition et ajouter des utilisateurs supplémentaires.
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "Éléments de menu"
menu_item_setting: "Visibilité"
wiki_menu_item_for: "Élément de menu pour wikipage « %{title} »"

@ -2558,6 +2558,17 @@ hr:
User limit reached. You cannot activate any more users. Please <a href="%{upgrade_url}">upgrade your plan</a> or block members to allow for additional users.
warning_user_limit_reached_instructions: >
You reached your user limit (%{current}/%{max} active users). Please contact sales@openproject.com to upgrade your Enterprise Edition plan and add additional users.
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "Stavka izbornika"
menu_item_setting: "Vidljivost"
wiki_menu_item_for: "Stavka izbornika za wiki stranicu \"%{title}\""

@ -339,7 +339,7 @@ hu:
account: "Felhasználói fiók"
attr_firstname: "Keresztnév attribútum"
attr_lastname: "Vezetéknév attribútum"
attr_login: "Username attribute"
attr_login: "Felhasználónév attribútum"
attr_mail: "Email attribútum"
base_dn: "Base DN"
host: "Host"
@ -729,7 +729,7 @@ hu:
#kept for backwards compatibility
issue: "Feladatcsoport"
lastname: "Vezetéknév"
login: "Username"
login: "Felhasználónév"
mail: "Email"
name: "Név"
password: "Jelszó"
@ -2532,6 +2532,17 @@ hu:
Elérte a felhasználói korlátot. Nem aktiválhat további felhasználókat. Kérjük, <a href="%{upgrade_url}"> frissítse a licencét </a>, vagy blokkolja a további tagokat a felhasználók engedélyezéséhez.
warning_user_limit_reached_instructions: >
Elérte a felhasználói limitet (%{current}/%{max} aktív felhasználók). Kérjük, forduljon a sales@openproject.com címhez az Enterprise Edition licenc frissítésért és további felhasználók hozzáadásához.
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "Menüpont"
menu_item_setting: "Látható"
wiki_menu_item_for: "Wikipage \"%{title}\" menüeleme"

@ -2509,6 +2509,17 @@ id:
User limit reached. You cannot activate any more users. Please <a href="%{upgrade_url}">upgrade your plan</a> or block members to allow for additional users.
warning_user_limit_reached_instructions: >
You reached your user limit (%{current}/%{max} active users). Please contact sales@openproject.com to upgrade your Enterprise Edition plan and add additional users.
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "Menu item"
menu_item_setting: "Visibilitas"
wiki_menu_item_for: "Menu untuk Halaman Wiki \"%{title}\""

@ -2531,6 +2531,17 @@ it:
Raggiunto il limite di utente. Non puoi attivare altri utenti. Per favore<a href="%{upgrade_url}">aggiorna il tuo piano</a> o blocca i membri per consentire altri utenti.
warning_user_limit_reached_instructions: >
Raggiunto il limite di utenti (%{current}/%{max} utenti attivi). Si prega di contattare sales@openproject.com per aggiornare il tuo piano Enterprise Edition e aggiungere ulteriori utenti.
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "Voce di menu"
menu_item_setting: "Visibilità"
wiki_menu_item_for: "Voce di menù per la pagina wiki \"%{title}\""

@ -2510,6 +2510,17 @@ ja:
ユーザー制限に達しました。 これ以上ユーザーをアクティブにすることはできません。 追加のユーザーが参加できるように<a href="%{upgrade_url}">プランをアップグレード</a>するか、メンバーをブロックしてください。
warning_user_limit_reached_instructions: >
ユーザー制限(%{current}/%{max} アクティブユーザー)に達しました。 sales@openproject.com に連絡してEnterprise Editionプランをアップグレードし、ユーザーを追加してください。
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "メニュー項目"
menu_item_setting: "可視性"
wiki_menu_item_for: "Wikiページ\"%{title}\"のメニュー項目"

@ -573,7 +573,7 @@ el:
error: "Παρουσιάστηκε σφάλμα."
errors:
not_implemented: "Το χρονοδιάγραμμα δεν μπόρεσε να επεξεργαστεί γιατί χρησιμοποιεί μια λειτουργία που δεν μπορεί να εφαρμοστεί ακόμη."
report_comparison: "The timeline could not render the configured comparisons. Please check the appropriate section in the configuration, resetting it can help solve this problem."
report_comparison: "Το χρονοδιάγραμμα δεν θα μπορούσε να αποδώσει τις διαμορφωμένες συγκρίσεις. Ελέγξτε την κατάλληλη ενότητα στη διαμόρφωση, επαναφέροντας την μπορεί να βοηθήσει στην επίλυση αυτού του προβλήματος."
report_epicfail: "Το χρονοδιάγραμμα δεν ήταν δυνατό να φορτωθεί λόγω απροσδόκητου σφάλματος."
report_timeout: "Το χρονοδιάγραμμα δεν ήταν δυνατό να φορτωθεί μέσα σε ένα λογικό χρονικό πλαίσιο."
filter:
@ -745,7 +745,7 @@ el:
rename_query_placeholder: "Το όνομα αυτής της προβολής"
star_text: "Σήμανση αυτής της προβολής ως αγαπημένη και προσθήκη στην πλάγια μπάρα αποθηκευμένων προβολών στα αριστερά."
public_text: >
Publish this view, allowing other users to access your view. Users with the 'Manage public views' permission can modify or remove public query. This does not affect the visibility of work package results in that view and depending on their permissions, users may see different results.
Δημοσιεύστε αυτή την προβολή, επιτρέποντας σε άλλους χρήστες να έχουν πρόσβαση στην προβολή σας. Οι χρήστες με δικαίωμα 'Διαχείρισης δημόσιων προβολών' μπορούν να τροποποιήσουν ή να αφαιρέσουν τις δημόσιες αναζητήσεις. Αυτό δεν επηρεάζει την ορατότητα των αποτελεσμάτων πακέτων εργασίας σε αυτή την προβολή και ανάλογα με τα δικαιώματα τους, οι χρήστες μπορεί να βλέπουν διαφορετικά αποτελέσματα.
errors:
unretrievable_query: "Δεν ήταν δυνατή η ανάκτηση της προβολής από τον σύνδεσμο URL"
not_found: "Δεν υπάρχει τέτοια προβολή"

@ -878,7 +878,7 @@ hu:
other: "%{count} gyermek feladatcsoport"
hour:
one: "1 h"
other: "%{count} h"
other: "%{count} ó"
zen_mode:
button_activate: 'Zen mód aktiválása'
button_deactivate: 'Zen mód kikapcsolása'

@ -2509,6 +2509,17 @@ ko:
사용자 제한에 도달했습니다. 더 이상 사용자를 활성화할 수 없습니다. <a href="%{upgrade_url}">플랜을 업그레이드</a>하거나 멤버를 차단하여 추가 사용자를 허용하세요.
warning_user_limit_reached_instructions: >
사용자 제한(활성 사용자 %{current}/%{max}명)에 도달했습니다. sales@openproject.com으로 연락하여 Enterprise Edition 플랜을 업그레이드하고 사용자를 더 추가하세요.
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "메뉴 항목"
menu_item_setting: "표시 여부"
wiki_menu_item_for: "위키 페이지 \"%{title}\"에 대한 메뉴 항목"

@ -2577,6 +2577,17 @@ lt:
Pasiektas vartotojų limitas. Jūs negalite aktyvuoti daugiau vartotojų. Prašome <a href="%{upgrade_url}">atnaujinti planą</a> arba blokuokite esamus vartotojus norėdami aktyvuoti naujus vartotojus.
warning_user_limit_reached_instructions: >
Jūs pasiekėte vartotojų ribą (%{current}/%{max} aktyvūs vartotojai). Susisiekite su sales@openproject.com norėdami atnaujinti savo Enterprise Edition planą arba pridėti papildomų vartotojų.
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "Meniu punktas"
menu_item_setting: "Matomumas"
wiki_menu_item_for: "Meniu punktas wiki puslapiui „%{title}“"

@ -2533,6 +2533,17 @@ nl:
Gebruikerslimiet bereikt. U kunt geen gebruikers meer activeren. <a href="%{upgrade_url}">upgrade uw abbonement</a> of blokkeer gebruikers om extra gebruikers toegang te geven.
warning_user_limit_reached_instructions: >
U bereikt uw gebruikerslimiet (%{current}/%{max} actieve gebruikers). Neem contact op met sales@openproject.com om te upgraden van uw Enterprise Edition-abonnement en extra gebruikers toevoegen.
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "Menu-item"
menu_item_setting: "Zichtbaarheid"
wiki_menu_item_for: "Menu-item voor wiki pagina \"%{title}\""

@ -2535,6 +2535,17 @@
User limit reached. You cannot activate any more users. Please <a href="%{upgrade_url}">upgrade your plan</a> or block members to allow for additional users.
warning_user_limit_reached_instructions: >
You reached your user limit (%{current}/%{max} active users). Please contact sales@openproject.com to upgrade your Enterprise Edition plan and add additional users.
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "Menyelement"
menu_item_setting: "Synlighet"
wiki_menu_item_for: "Menyelement for wiki-siden \"%{title}\""

@ -2578,6 +2578,17 @@ pl:
Osiągnięto limit użytkowników. Nie możesz aktywować kolejnych użytkowników. <a href="%{upgrade_url}"> uaktualnij swój plan </a> lub zablokuj członków, aby umożliwić korzystanie z dodatkowych użytkowników.
warning_user_limit_reached_instructions: >
Osiągnięto limit użytkownika (%{current}/%{max} aktywnych użytkowników). Skontaktuj się z sales@openproject.com do uaktualnienia planu Enterprise Edition i dodać więcej kont użytkowników.
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "Element menu"
menu_item_setting: "Widoczność"
wiki_menu_item_for: "Element menu dla strony wiki \"%{title}\""

@ -2533,6 +2533,17 @@ pt-BR:
Atingido o limite de usuários. Você não pode ativar mais nenhum usuário. <a href="%{upgrade_url}">Atualize seus plano</a> ou bloqueie a adição de novos usuários.
warning_user_limit_reached_instructions: >
Você atingiu seu limite de usuários (%{current}/%{max} usuários ativos). Entre em contato com sales@openproject.com para atualizar seu plano Enterprise Edition e adicionar novos usuários.
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "Item de menu"
menu_item_setting: "Visibilidade"
wiki_menu_item_for: "Item de menu para página wiki \"%{title}\""

@ -2533,6 +2533,17 @@ pt:
Atingido o limite de utilizadores. Não pode ativar mais nenhum utilizador. <a href="%{upgrade_url}">Atualize o seu plano</a> ou bloqueie a adição de novos utilizadores.
warning_user_limit_reached_instructions: >
Atingiu o seu limite de utilizadores (%{current}/%{max} utilizadores ativos). Entre em contato com sales@openproject.com para atualizar o seu plano Enterprise Edition e adicionar novos utilizadores.
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "Item de menu"
menu_item_setting: "Visibilidade"
wiki_menu_item_for: "Item de menu para página wiki \"%{title}\""

@ -2557,6 +2557,17 @@ ro:
User limit reached. You cannot activate any more users. Please <a href="%{upgrade_url}">upgrade your plan</a> or block members to allow for additional users.
warning_user_limit_reached_instructions: >
You reached your user limit (%{current}/%{max} active users). Please contact sales@openproject.com to upgrade your Enterprise Edition plan and add additional users.
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "Element de meniu"
menu_item_setting: "Vizibilitate"
wiki_menu_item_for: "Meniu pentru pagina wiki \"%{title}\""

@ -2576,6 +2576,17 @@ ru:
Достигнут предел пользователя. Вы более не можете активировать пользователей. <a href="%{upgrade_url}">, обновите ваш план</a> или блок участников для дополнительных пользователей.
warning_user_limit_reached_instructions: >
Вы достигли вашего пользовательского предела (%{current}/%{max} активных пользователей). Пожалуйста, свяжитесь с sales@openproject.com для обновления своего плана до Корпоративной версии и добавьте дополнительных пользователей.
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "Пункт меню"
menu_item_setting: "Видимость"
wiki_menu_item_for: "Пункт меню для wiki-страницы «%{title}»"

@ -2580,6 +2580,17 @@ sk:
Váš limit počtu užívateľov bol dosiahnutý. Nie je možné aktivovať viac užívateľov. Prosím <a href="%{upgrade_url}">upgradujte váš cenový plán</a> alebo zablokujte niektorých stávajúcich členov aby bolo možné pridanie ďalších užívateľov.
warning_user_limit_reached_instructions: >
Limit počtu užívateľov (%{current}/%{max} aktívnych užívateľov) dosiahnutý. Prosím kontaktujte sales@openproject.com a upgradujte Vašu Enterprise Edition a pridajte ďalších užívateľov.
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "Položka menu"
menu_item_setting: "Viditeľnosť"
wiki_menu_item_for: "Položka menu pre wiki \"%{title}\""

@ -2531,6 +2531,17 @@ sv:
Användargränsen har uppnåtts. Du kan inte aktivera fler användare. Vänligen <a href="%{upgrade_url}">uppgradera din plan</a> eller blockera medlemmar för att tillåta ytterligare användare.
warning_user_limit_reached_instructions: >
Du har nått din användargräns (%{current}/%{max} aktiva användare). Kontakta sales@openproject.com för att uppgradera din Enterprise Edition-plan och lägga till ytterligare användare.
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "Menyalternativ"
menu_item_setting: "Synlighet"
wiki_menu_item_for: "Menyobjekt för wiki-sida \"%{title}\""

@ -1035,7 +1035,7 @@ tr:
rename_groups: "Öznitelik grubunun adını değiştirin"
project_filters:
description_html: "Özel alanlara filtre uygulama ve sıralama, kurumsal sürüm özelliğidir."
enumeration_activities: "Time tracking activities"
enumeration_activities: "Zaman izleme faaliyetleri"
enumeration_work_package_priorities: "İş paketi öncelikleri"
enumeration_reported_project_statuses: "Bildirilen proje durumları"
error_auth_source_sso_failed: "Çoklu oturum açma (SSO) için kullanıcı '%{value}' başarısız oldu"
@ -1107,7 +1107,7 @@ tr:
pdf_with_descriptions_and_attachments: "Ekler ve açıklamalarla birlikte PDF"
pdf_with_attachments: "Eklerle birlikte PDF"
image:
omitted: "Image not exported."
omitted: "Görüntü dışa aktarılmadı."
extraction:
available:
pdftotext: "Pdftotext kullanılabilir (isteğe bağlı)"
@ -2534,6 +2534,17 @@ tr:
Kullanıcı limitine ulaşıldı. Daha fazla kullanıcıyı etkinleştiremezsiniz. Lütfen <a href="%{upgrade_url}"> planınızı yükseltin </a> veya ek kullanıcılara izin vermek için üyeleri engelleyin.
warning_user_limit_reached_instructions: >
Kullanıcı sınırınıza ulaştınız (%{current}/%{max} aktif kullanıcılar). Enterprise Edition planınızı yükseltmek ve ek kullanıcılar eklemek için lütfen sales@openproject.com adresine başvurun.
0: >
warning_bar:
protocol_mismatch:
title: 'Protokol ayarı uyuşmazlığı'
text_html: >
Uygulamanız, protokol ayarı <code>%{set_protocol}</code>,olarak ayarlanmış şekilde çalışıyor, ancak istek bir <code>%{actual_protocol}</code> isteğidir. Bu hatalarla sonuçlanacaktır! <a href="%{setting_path}"> Sistem ayarları </a> 'na gidin ve bunu düzeltmek için "Protokol" ayarını değiştirin.
hostname_mismatch:
title: 'Ana bilgisayar adı ayar uyuşmazlığı'
text_html: >
Uygulamanız, ana makine adı ayarı <code>%{set_hostname}</code> olarak ayarlanmış, ancak istek bir <code>%{actual_hostname}</code> ana bilgisayar adı. Bu hatalarla sonuçlanacaktır! <a href="%{setting_path}"> Sistem ayarları </a> 'na gidin ve bunu düzeltmek için "Ana makine adı" ayarını değiştirin.
menu_item: "Menü seçeneği"
menu_item_setting: "Görünürlük"
wiki_menu_item_for: "Wikipage için menü öğesi \" %{title} \""

@ -2580,6 +2580,17 @@ uk:
Досягнуто обмеження користувача. Не можна активувати більше користувачів. Будь ласка <a href="%{upgrade_url}"> оновіть свій план </a> або заблокувати учасників для додаткових користувачів.
warning_user_limit_reached_instructions: >
Ви досягли обмеження користувача (%{current}/%{max} активних користувачів). Зверніться до sales@openproject.com, щоб оновити план Enterprise Edition і додати додаткових користувачів.
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "Пункт меню"
menu_item_setting: "Видимість"
wiki_menu_item_for: "Пункт меню для вікі-сторінки %{title}"

@ -2507,6 +2507,17 @@ zh-CN:
达到用户限制。 您无法再激活任何用户。 请<a href="%{upgrade_url}">升级您的计划</a>或阻止会员以允许其他用户。
warning_user_limit_reached_instructions: >
您达到了用户限制(%{current}/%{max}活跃用户)。 请联系sales@openproject.com以升级您的Enterprise Edition计划并添加其他用户。
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "菜单项"
menu_item_setting: "可见性"
wiki_menu_item_for: "wiki页面” %{title} “的菜单项"

@ -2511,6 +2511,17 @@ zh-TW:
達到用戶限制。 您無法再激活任何用戶。 請<a href="%{upgrade_url}">升級您的計劃</a>或阻止會員以允許其他用戶。
warning_user_limit_reached_instructions: >
您達到了用戶限制(%{current}/%{max}活躍用戶)。 請聯係sales@openproject.com以升級Enterprise Edition計劃並添加其他用戶。
0: >
warning_bar:
protocol_mismatch:
title: 'Protocol setting mismatch'
text_html: >
Your application is running with its protocol setting set to <code>%{set_protocol}</code>, but the request is an <code>%{actual_protocol}</code> request. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Protocol" setting to correct this.
hostname_mismatch:
title: 'Hostname setting mismatch'
text_html: >
Your application is running with its host name setting set to <code>%{set_hostname}</code>, but the request is a <code>%{actual_hostname}</code> hostname. This will result in errors! Go to <a href="%{setting_path}">System settings</a> and change the "Host name" setting to correct this.
menu_item: "選單項目"
menu_item_setting: "可見度"
wiki_menu_item_for: "Wikipage \"%{title}\" 的功能表項目"

@ -1,30 +1,90 @@
db:
image: mysql
volumes:
- ~/.docker-volumes/openproject/db:/var/lib/mysql
expose:
- "3306"
environment:
- MYSQL_ALLOW_EMPTY_PASSWORD=true
version: "3.7"
networks:
frontend:
backend:
volumes:
pgdata:
opdata:
worker: &ruby
x-op-restart-policy: &restart_policy
restart: unless-stopped
x-op-image: &image
build: .
image: openproject/community:${TAG:-10-test}
x-op-app: &app
<<: *image
<<: *restart_policy
environment:
- "RAILS_CACHE_STORE=memcache"
- "OPENPROJECT_CACHE__MEMCACHE__SERVER=cache:11211"
- "OPENPROJECT_RAILS__RELATIVE__URL__ROOT=${OPENPROJECT_RAILS__RELATIVE__URL__ROOT:-}"
- "DATABASE_URL=postgres://postgres:p4ssw0rd@db/openproject"
- "USE_PUMA=true"
# set to true to enable the email receiving feature. See ./docker/cron for more options
- "IMAP_ENABLED=false"
volumes:
- .:/usr/src/app
links:
- "opdata:/var/openproject/assets"
depends_on:
- db
environment:
- "RAILS_CACHE_STORE=file_store"
command: "./docker/worker"
- cache
web:
<<: *ruby
ports:
- "8080:8080"
command: "./docker/web"
services:
db:
image: postgres:10
<<: *restart_policy
stop_grace_period: "3s"
volumes:
- "pgdata:/var/lib/postgresql/data"
environment:
- POSTGRES_PASSWORD=p4ssw0rd
- POSTGRES_DB=openproject
networks:
- backend
frontend:
build: .
volumes:
- .:/usr/src/app
command: "./docker/webpack-watch"
cache:
image: memcached
<<: *restart_policy
networks:
- backend
proxy:
<<: *image
<<: *restart_policy
command: "./docker/proxy"
ports:
- "8080:80"
environment:
- APP_HOST=web
- "OPENPROJECT_RAILS__RELATIVE__URL__ROOT=${OPENPROJECT_RAILS__RELATIVE__URL__ROOT:-}"
depends_on:
- web
networks:
- frontend
web:
<<: *app
command: "./docker/web"
networks:
- frontend
- backend
worker:
<<: *app
command: "./docker/worker"
networks:
- backend
cron:
<<: *app
command: "./docker/cron"
networks:
- backend
seeder:
<<: *app
command: "./docker/seeder"
restart: on-failure
networks:
- backend

@ -39,13 +39,27 @@ fi
if [ "$(id -u)" = '0' ]; then
mkdir -p $APP_DATA_PATH/{files,git,svn}
chown -R $APP_USER:$APP_USER $APP_DATA_PATH
chown -R $APP_USER:$APP_USER $APP_DATA_PATH /etc/apache2/sites-enabled/
# Clean up any dangling PID file
rm -f $APP_PATH/tmp/pids/*
# Clean up a dangling PID file of apache
if [ -e "$APACHE_PIDFILE" ]; then
rm -f $APACHE_PIDFILE || true
fi
# Fix assets path if relative URL is used
relative_url_root_without_trailing_slash="$(echo $OPENPROJECT_RAILS__RELATIVE__URL__ROOT | sed 's:/*$::')"
if [ "$relative_url_root_without_trailing_slash" != "" ]; then
for file in $(egrep -lR "/assets/" "$APP_PATH/public"); do
# only the font paths in the CSSs need updating
sed -i "s|/assets/|${relative_url_root_without_trailing_slash}/assets/|g" $file
# the .gz is the one served by puma, so rebuild it
gzip --force --keep $file
done
fi
if [ ! -z "$ATTACHMENTS_STORAGE_PATH" ]; then
mkdir -p "$ATTACHMENTS_STORAGE_PATH"
chown -R "$APP_USER:$APP_USER" "$ATTACHMENTS_STORAGE_PATH"
@ -53,7 +67,7 @@ if [ "$(id -u)" = '0' ]; then
mkdir -p "$APP_PATH/log" "$APP_PATH/tmp/pids" "$APP_PATH/files"
chown "$APP_USER:$APP_USER" "$APP_PATH"
chown -R "$APP_USER:$APP_USER" "$APP_PATH/log" "$APP_PATH/tmp" "$APP_PATH/files" "$APP_PATH/public"
if [ "$1" = "./docker/supervisord" ]; then
if [ "$1" = "./docker/supervisord" ] || [ "$1" = "./docker/proxy" ]; then
exec "$@"
else
exec $APP_PATH/docker/gosu $APP_USER "$BASH_SOURCE" "$@"

@ -1,21 +1,19 @@
#!/bin/bash
set -e
set -o pipefail
cd /opt
# install Clozure CL to avoid memory issues with the standard SBCL
wget -q https://github.com/Clozure/ccl/releases/download/v1.11.5/ccl-1.11.5-linuxx86.tar.gz
tar -xzf ccl-1.11.5-linuxx86.tar.gz
rm ccl-1.11.5-linuxx86.tar.gz
curl -sL https://github.com/Clozure/ccl/releases/download/v1.11.5/ccl-1.11.5-linuxx86.tar.gz -o - | tar xzf - -C /opt/
ln -s /opt/ccl/scripts/ccl64 /usr/local/bin/ccl
export CCL_DEFAULT_DIRECTORY=/opt/ccl
# build pgloader from source using CCL as the lisp runtime
git clone https://github.com/dimitri/pgloader.git
git clone -q https://github.com/dimitri/pgloader.git --branch v3.6.1 --depth 1
cd pgloader
git checkout v3.6.1
make CL=ccl pgloader >& /tmp/pgloader-compile.log || (cat /tmp/pgloader-compile.log && exit 1)
mv /opt/pgloader/build/bin/pgloader /usr/local/bin/pgloader-ccl
rm -rf /opt/pgloader
rm -rf /opt/pgloader /tmp/pgloader-compile.log /usr/local/bin/ccl /opt/ccl

@ -13,6 +13,9 @@ popd
# Bundle assets
DATABASE_URL='nulldb://nohost' RAILS_ENV=production bundle exec rake assets:precompile
# Remove sprockets cache
rm -rf "$APP_PATH/tmp/cache/assets"
# Remove node_modules and entire frontend
rm -rf "$APP_PATH/node_modules/" "$APP_PATH/frontend/node_modules/"

@ -3,9 +3,11 @@
DocumentRoot <%= ENV.fetch('APP_PATH') %>/public
ProxyRequests off
ProxyPreserveHost On
<Location />
ProxyPass http://127.0.0.1:8080/ retry=0
ProxyPassReverse http://127.0.0.1:8080/
<% location = ENV.fetch("OPENPROJECT_RAILS__RELATIVE__URL__ROOT", "").chomp("/") %>
<Location <%= location == "" ? "/" : location %>>
ProxyPass http://<%= ENV.fetch("APP_HOST", "127.0.0.1") %>:8080<%= location %>/ retry=0
ProxyPassReverse http://<%= ENV.fetch("APP_HOST", "127.0.0.1") %>:8080<%= location %>/
</Location>
</VirtualHost>

@ -0,0 +1,11 @@
#!/bin/bash -e
echo "Executing database migration and database seed..."
bundle exec rake db:migrate db:seed
if [ "$1" = "--set" ]; then
shift
echo "Update application settings..."
bundle exec rake setting:set["$@"]
fi
exit 0

@ -110,13 +110,5 @@ fi
echo "-----> Database setup finished."
echo " On first installation, the default admin credentials are login: admin, password: admin"
if [ -n "$OPENPROJECT_RAILS__RELATIVE__URL__ROOT" ]; then
echo
echo "-----> Precompiling assets since RAILS_RELATIVE_URL_ROOT is set. This may take a minute."
RAILS_RELATIVE_URL_ROOT=$OPENPROJECT_RAILS__RELATIVE__URL__ROOT bash /app/docker/precompile-assets.sh
echo "-----> Asset precompilation finished."
echo
fi
echo "-----> Launching supervisord..."
exec /usr/bin/supervisord -c $APP_PATH/docker/supervisord.conf -e ${SUPERVISORD_LOG_LEVEL}

@ -2,12 +2,6 @@
if [ "$1" = "--seed" ]; then
shift
echo "Executing database migration and database seed..."
bundle exec rake db:migrate db:seed
if [ "$1" = "--set" ]; then
shift
echo "Update application settings..."
bundle exec rake setting:set["$@"]
fi
$APP_PATH/docker/seeder "$@"
fi
exec bundle exec rake jobs:work

BIN
docs/.DS_Store vendored

Binary file not shown.

@ -20,10 +20,10 @@ In the overlay window, you can choose between several topics:
| Popular Topics | Description |
| ------------------------------------------------------------ | :----------------------------------------------------- |
| [Upgrade, downgrade or cancel](#update-existing-subscriptions) | How to upgrade, downgrade or cancel a subscription? |
| Edit Account information | |
| Edit Billing Addresses | |
| Edit or add payment methods | |
| Edit or add payment methods | |
| Edit Account information | How to edit account information? |
| Edit Billing Addresses | How to edit the billing addresses? |
| Edit or add payment methods | How to edit or add the payment method? |
| | |
| [View billing history and dowload invoices](../invoices-and-billing-history) | How to view the billing history and download invoices? |
## Update existing subscriptions

@ -16,7 +16,7 @@ Please go to https://www.openproject.org/enterprise-edition/ and press the green
A window will appear which explains that you will receive a 14 days free trial license with that you can temporarily upgrade your Community Edition.
There is no need to cancel the trial license. The license will run out automatically and will bring you back to the Community version.
There is no need to cancel the trial license. The license will run out automatically and will bring you back to the Community version.
Click the blue **Proceed To Checkout** button.

Binary file not shown.

@ -29,7 +29,7 @@ Here you will learn about the **first steps with OpenProject**. If you need more
## 5 steps to get started
Watch a short 3 minute introduction video to get started with OpenProject in 5 easy steps:
Watch a short 3-minute introduction video to get started with OpenProject in 5 easy steps:
1. Create a project
2. Add team members

@ -1,31 +1,26 @@
---
sidebar_navigation:
title: Boards introduction
priority: 500
description: Introduction to boards in OpenProject.
robots: index, follow
keywords: boards introduction
---
# Introduction to agile Boards (Premium feature)
# Introduction to agile Boards (premium feature available in cloud and enterprise edition)
In this document you will get a first introduction to the Boards in OpenProject, i.e. how to use a Kanban board to manage your tasks in an agile way.
<div class="glossary">
**Boards** in OpenProject consist of cards and columns. They help to visualize work, limit work-in-progress, and maximize efficiency (or flow).
</div>
To find out more about the functionalities of Boards, please visit our [user guide for boards](../../user-guide/agile-boards).
Agile board is a premium feature and only available for [OpenProject Cloud Edition](https://www.openproject.org/hosting/) and [Enterprise Edition](https://www.openproject.org/enterprise-edition/) customers.
The Agile Board is a premium feature and only available for [OpenProject Cloud Edition](https://www.openproject.org/hosting/) and [Enterprise Edition](https://www.openproject.org/enterprise-edition/) customers.
| Feature | Documentation for |
| ---------------------------------------------------------- | ------------------------------------------ |
| [What is a Board?](#what-is-a-board?) | Find out what is a Board in OpenProject. |
| Feature | Documentation for |
| ----------------------------------------------------------- | ------------------------------------------ |
| [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?
Agile Boards in OpenProject support teams in their agile project management methodology, e.g. Scrum or Kanban.
You can create as many flexible boards as you want with both lists and cards on it. A list usually represents a workflow, e.g. status or versions of a work package. The cards are work packages, e.g. tasks, on this list.
You can create as many flexible boards as you want with both lists and cards on it. A list usually represents a workflow, e.g. status or version of a work package. The cards are work packages, e.g. tasks, on this list.
<iframe width="560" height="315" src="https://www.youtube.com/embed/Z7iE_BNCDus" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
## Manage your work in a Board
@ -34,7 +29,7 @@ To manage your work in an agile board, open the Boards module in the project men
1. Choose a board from the list where you want to work on. Open it by double clicking on the board's titel.
2. You can prioritize cards within a list via drag and drop.
3. You can add a card to a new list in the sae way.
3. You can add a card to a new list in the same way.
4. You can edit the details of a card by **double click**ing on the card.
5. Finally the arrow brings you back to the boards view.

@ -11,6 +11,10 @@ keywords: Gantt charts introduction
In this document you will get a first introduction to the Gantt charts in OpenProject, i.e. to create and manage a project plan.
<div class="glossary">
**Gantt charts** in OpenProject are definded as a type of bar chart that shows all the tasks constituting a project. Tasks are listed vertically, with the horizontal axis marking time. The lengths of task bars are to scale with tasks’ durations.
</div>
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 |

@ -11,6 +11,10 @@ keywords: invite members
In order to see a project and work in it, you have to be a member of a project. Therefore, you have to **add team members to a project**.
<div class="glossary">
**Member** is defined as a project member in a project. Project members are added in the members tab in the project settings.
</div>
<div class="alert alert-info" role="alert">
**Note**: If you are not a member of a project, you do not see the project in the Project selection nor in the project list.
@ -40,7 +44,7 @@ In the Members list you will get an overview of the current members of this proj
Click the green **+ Member** button in the top right corner.
Type in the name of the team member which you want to add. You can also choose several members at once. **Assign a role** to the new member(s) and click the blue **Add** button.
Type the name of the team member which you want to add. You can also choose several members at once. **Assign a role** to the new member(s) and click the blue **Add** button.
![add-members](1566224199456.png)

@ -68,6 +68,15 @@ If you click the dots on the lower right hand corner in a widget you can change
You can configure the view of a work package widget to have the information included that you need.
<div class="glossary“>
**Work package** is a subset of a project that can be assigned to users for execution, such as Tasks, Bugs, User Storys, Milestones, and more. Work packages have a type, an ID and a subject and may have additional attributes, such as assignee, responsible, story points or target version. Work packages are displayed in a projects timeline (unless they are filtered out in the timeline configuration) - either as milestone or as phase. In order to use the work packages, the work package module has to be activated in the project settings.
</div>
On a work package widget, click the three dots and select **Configure view...**
You can configure the work package table (e.g. filter, group, highlight, sort) according to the [filter, sorting and grouping criteria for work packages](../../user-guide/work-packages/#work-package-table-configuration).

@ -10,6 +10,10 @@ keywords: open project, create project, projects introduction
Get an introduction how to work with projects in OpenProject. To start collaboration in OpenProject, you first have to set up a new project.
<div class="glossary">
A **project** is defined as a temporary, goal-driven effort to create a unique output. A project has clearly defined phases, and its success is measured by whether it meets its stated objectives
<div class="alert alert-info" role="alert">
**Note**: In order to see a project and work in it, you have to be a [member of a project](../invite-members).
</div>
@ -33,6 +37,10 @@ You can also start typing in a project name to filter for the project's title.
Project and subproject are displayed according to their hierarchy in the drop-down menu.
<div class="glossary">
**Subproject** is definded as a child project of another project. Subprojects can be used to display a hierarchy of projects. Several filter options (e.g. in work package list and timeline) can be applied only to the current project and its subprojects.
</div>
![project hierarchy](1572877762016.png)
Also, you will see your newest projects on the application landing page in the **Projects** section. Here you can simply click on one of the newest visible projects to open it.

@ -12,8 +12,9 @@ Simply run `sudo openproject reconfigure`, and when the database wizard is displ
## Docker-based installation
You can simply pass a custom `DATABASE_URL` environment variable on the
docker command-line, which could point to an external database.
If you run the all-in-one container, you can simply pass a custom
`DATABASE_URL` environment variable on the docker command-line, which could
point to an external database.
Example:
@ -21,5 +22,11 @@ Example:
docker run -d ... -e DATABASE_URL=mysql2://user:pass@host:port/dbname openproject/community:10
```
The docker image will make sure that the database gets the migrations and demo
data as well.
If you run the Compose based docker stack, you can simply override the `DATABASE_URL` environment variable, and remove the `db` service from the `docker-compose.yml` file. Then you can restart the stack with:
```
docker-compose down
docker-compose up -d
```
In both cases the seeder will be run when you (re)launch OpenProject to make sure that the database gets the migrations and demo data as well.

@ -10,44 +10,33 @@ Both the packaged and docker-based installations ship with Apache as the default
For a packaged-based installation, if for instance you wish to use NginX, you will need to skip the web server installation when asked in the initial configuration, and then configure NginX yourself so that it forwards traffic to the OpenProject web process (listening by default on 127.0.0.1:6000).If using SSL/TLS, please ensure you set the header value `X-Forwarded-Proto https` so OpenProject can correctly produce responses.
For a docker-based installation, you will need to switch to the single-process launch mode, where you would launch one or more containers for the `web` process, one container for the `worker` process, and then setup a web server of your choice in another container that forwards traffic to the `web` container(s). A simplified Compose file would look like:
For a docker-based installation, you will need to use the (recommended) Compose stack, which will allow you to swap the `proxy` container with whatever server you want to use.
For instance you could define a new proxy server like this:
```yaml
version: '3'
services:
database:
image: postgres:10
environment:
- POSTGRES_PASSWORD=p4ssw0rd
- POSTGRES_DB=openproject
nginx:
...
proxy:
image: nginx
volumes:
- ./nginx.conf:/etc/nginx/conf.d/default.conf:ro
ports:
- "8080:80"
web: &openproject
environment:
- DATABASE_URL=postgres://postgres:p4ssw0rd@database/openproject
image: openproject/community:10
command: ./docker/web
worker:
<<: *openproject
command: ./docker/worker
...
```
And the corresponding NginX configuration file would look like:
```
# default.conf
upstream app {
upstream web {
server web:8080;
}
server {
listen 80;
server_name _;
server_name _;
location / {
proxy_pass_header Server;
@ -55,7 +44,7 @@ server {
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Scheme $scheme;
proxy_pass http://app/;
proxy_pass http://web/;
}
}
```

@ -14,10 +14,34 @@ installed first, which usually requires a recent operating system. Please see
the [Docker Engine installation page](https://docs.docker.com/install) if you don't have Docker
installed.
Also, please note that the Docker image is quite new and might not support all
the options that the package-based or manual installation provides.
OpenProject with Docker can be launched in two ways:
## Quick Start
1. Multiple containers (recommended), each with a single process inside, using a Compose file. Allows to easily choose which services you want to run, and simplifies scaling and monitoring aspects.
2. One container with all the processes inside. Easy but not recommended for production. This is the legacy behaviour.
## One container per process (recommended)
### Quick Start
First, you must clone the OpenProject repository:
```bash
git clone --depth=1 --branch=stable/10 https://github.com/opf/openproject
```
Then, go into the OpenProject folder and you can launch all the services required by OpenProject with docker-compose:
```bash
docker-compose up -d
```
After some time, you will be able to access OpenProject on http://localhost:8080.
Note that the official `docker-compose.yml` file present in the repository can be adjusted to your convenience. For instance you could mount specific configuration files, override environment variables, or switch off services you don't need. Please refer to the official docker-compose documentation for more details.
## All-in-one container
### Quick Start
The fastest way to get an OpenProject instance up and running is to run the
following command:
@ -44,7 +68,7 @@ achieved with the `-d` flag:
docker run -d -p 8080:80 -e SECRET_KEY_BASE=secret openproject/community:10
```
## Recommended usage
### Recommended usage
The one-liner above is great to get started quickly, but if you want to run
OpenProject in production you will likely want to ensure that your data is not
@ -86,12 +110,12 @@ docker stop openproject
docker rm openproject
```
## Initial configuration
### Initial configuration
OpenProject is usually configured through a YAML file, but with the Docker
image you need to pass all configuration through environment variables. You can
overwrite any of the values usually found in the standard YAML file by using
[environment variables](#TODO).
[environment variables](../../configuration/environment).
Environment variables can be either passed directly on the command-line to the
Docker Engine, or via an environment file:
@ -104,15 +128,4 @@ docker run -d --env-file path/to/file ...
For more advanced configuration, please have a look at the [Advanced configuration](../../configuration) section.
## Launching a specific process instead of the all-in-one installation
OpenProject is made of multiple processes (web, worker, cron, etc.). By default the docker image will launch all those processes within a single container for ease of use. However some use cases might require that you only launch one process per container, in which case you should override the docker command to specify the process you want to launch.
By default the container will run `./docker/supervisord`, but you can override this with `./docker/web`, `./docker/worker`, `./docker/cron` to launch the individual services separately (e.g. in a docker-compose file). Please note that in this configuration you will have to setup the external services (postgres, memcached, email sending) by yourself.
Example:
```bash
docker run -d -e DATABASE_URL=xxx ... openproject/community:10 ./docker/web
docker run -d -e DATABASE_URL=xxx ... openproject/community:10 ./docker/worker
```

@ -52,12 +52,9 @@ You should then copy those dump files to a secure location, for instance an S3 b
## Docker-based installation
TODO: review
If you are using docker-compose, then the data volumes are managed by Docker and you should have a look at https://docs.docker.com/storage/volumes/ for instructions on how to backup.
If you've followed the steps described in the [installation guide for Docker](../../installation/docker),
then you just need to make a backup of the exported volumes, at your
convenience. As a reminder, here is the recommended way to launch OpenProject
with Docker:
If you are using the all-in-one container, then you can simply backup any local volumes that you chose to bind-mount with the `-v` option when launching the container. For instance if you launched the container with:
```bash
sudo mkdir -p /var/lib/openproject/{pgdata,logs,static}
@ -69,6 +66,4 @@ docker run -d -p 8080:80 --name openproject -e SECRET_KEY_BASE=secret \
openproject/community:10
```
If you're using the same local directories than the above command, then you
just need to backup your local `/var/lib/openproject` folder (for instance to
S3 or FTP).
Then you would need to backup the `/var/lib/openproject` folder (for instance to S3 or FTP server).

@ -97,16 +97,4 @@ sudo service openproject restart
## Docker-based installation
Assuming you have a backup as per the procedure described in the [Backing up](../backing-up) guide, if at any point you want to restore from a backup, just put your backup back in `/var/lib/openproject` on your local host, and re-launch the docker container with the recommended options.
For instance, assuming your backup was stored on S3:
```bash
aws s3 cp --recursive s3://my-backup-bucket/openproject-backups/ /var/lib/openproject/
docker run -d -p 8080:80 --name openproject -e SECRET_KEY_BASE=secret \
-v /var/lib/openproject/pgdata:/var/lib/postgresql/9.6/main \
-v /var/lib/openproject/logs:/var/log/supervisor \
-v /var/lib/openproject/static:/var/db/openproject \
openproject/community:10
```
For Docker-based installations, assuming you have a backup as per the procedure described in the [Backing up](../backing-up) guide, you simply need to restore files into the correct folders (when using the all-in-one container), or restore the docker volumes (when using the Compose file), then start OpenProject using the normal docker or docker-compose command.

@ -8,7 +8,13 @@ keywords: enumerations
---
# Manage Enumerations
The **Enumerations** settings allow adapting of Activities (for time tracking), work package priorities and document categories. To get an overview of existing enumeration values for all of these categories, navigate to the -> *Administration* -> *Enumerations*. You will see the enumerations overview, divided into respective sections.
The **Enumerations** settings allow adapting of Activities (for time tracking), work package priorities and document categories.
<div class="glossary“>
**Enumerations** are defined as a menu item in admin settings that allows the configuration of Activities (for time tracking), project status and work package priorities.
</div>
To get an overview of existing enumeration values for all of these categories, navigate to the -> *Administration* -> *Enumerations*. You will see the enumerations overview, divided into respective sections.
![enumerations](image-20200122161732016.png)

@ -12,6 +12,10 @@ keywords: manage groups
OpenProject allows creating tailored project member **groups**, which grants additional rights to individual users within specific projects. This way, you do not need to add individual users to a project but you can add a user group, e.g. Marketing.
You can edit the existing groups and create new ones in the system administration. To do that select *Administration -> Users & Permissions -> *Groups*.
<div class="glossary">
**Group** is defined as a list of users which can be assigned to a project with a certain role. New groups can be defined in the admin settings (Modules > Administration).
</div>
## Add a new group
After selecting the *Groups* from the administration menu, you will see the list of all the existing groups. If no groups have been created yet, the list will be empty.

@ -11,6 +11,11 @@ keywords: manage users
The users list provides an overview of all users in OpenProject. You can create new users, make changes to existing user accounts, block or delete users from the system.
<div class="glossary">
**User** is defined as a person (described by an identifier) who uses OpenProject. New users can be created in the admin settings. Users can become project members by assigning them a role and adding them via the project settings.
</div>
| Feature | Documentation for |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
| [User list](#user-list) | Manage all users in OpenProject. |

@ -18,6 +18,12 @@ Here you will learn about all functionalities in OpenProject.
Your work in OpenProject can be organized in multiple projects with a distinct set of members and their respective roles in that project. Each project can be individually configured with regards to the enabled features, which are called *Modules* in OpenProject. This distinction between projects provides you with a lot of flexibility to set up your work, and control what users are allowed to collaborate in each indivudal project.
<div class="glossary">
**Module** is defined as an independent unit of functionality that can be used to extend and improve the existing core functions. Modules can be activated and deactivated in the project settings (information tab).
</div>
Both the community edition and enterprise edition allows you to create an unlimited number of projects to separate your work. To learn more about the creation and management of projects within OpenProject, [please visit our separate section on projects](projects/).
## Overview of modules in OpenProject

@ -9,7 +9,14 @@ keywords: activity
# Activity
In OpenProject you can display the activities in a project to gain a quick overview about the current status and changes. The activity page lists the newest developments in your project. The changes are listed in reverse chronological order, with the latest changes appearing on top. Apply a filter (located below the project navigation on the left), to select which attributes are included in the activity.
In OpenProject you can display the activities in a project to gain a quick overview about the current status and changes. The activity page lists the newest developments in your project.
<div class="glossary">
**Activity** is defined as a module that displays the actions performed in a project over a certain period of time.
</div>
The changes are listed in reverse chronological order, with the latest changes appearing on top. Apply a filter (located below the project navigation on the left), to select which attributes are included in the activity.
The activity includes changes to work packages, repository changes, new, wiki entries or forum messages.

@ -13,6 +13,12 @@ Working in agile project teams is becoming increasingly important.
OpenProject supports your work with the Scrum methodology by providing a variety of functionalities. You can record and prioritize user stories in the sprint and product backlog, use digital task boards or burndown-charts, print story cards, and much more. For more information, please refer to the OpenProject [agile and scrum features](https://www.openproject.org/collaboration-software-features/agile-scrum-agile-project-management-openproject/) page.
<div class="glossary">
A **backlog** is defined as a plugin that allows to use the backlogs feature in OpenProject. In order to use backlogs in a project, the backlogs plugin has to be installed and the backlogs module has to be activated in the project settings of a project (the accessibility mode has to be deactivated).
</div>
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.
| Feature | Documentation for |
@ -22,9 +28,9 @@ Please note that this user guide does not represent an introduction into scrum m
| [Story points](story-points) | How to estimate and edit story points in the backlogs view? |
| [Create a new user story](create-new-story) | How to create a new epic, user story, bug or feature in the backlogs view? |
| [Task board](taskboard) | How to work with the taskboard? |
| [Burndown chart](burndown-chart) | |
| [Print story cards](https://www.openproject.org/help/agile-scrum/print-story-cards/) | |
| [Sprint wiki page](https://www.openproject.org/help/agile-scrum/create-sprint-wiki-page/) | |
| [Selecting folded or collapsed backlogs view](https://www.openproject.org/help/agile-scrum/selecting-folded-collapsed-backlogs-view/) | |
| [Burndown chart](burndown-chart) | How to create a burndown chart? |
| [Print story cards](https://www.openproject.org/help/agile-scrum/print-story-cards/) | How to print story cards? |
| [Sprint wiki page](https://www.openproject.org/help/agile-scrum/create-sprint-wiki-page/) | How to create a sprint wiki page? |
| [Selecting folded or collapsed backlogs view](https://www.openproject.org/help/agile-scrum/selecting-folded-collapsed-backlogs-view/) | How to select the folded or collapsed backlogs view? |
<iframe width="560" height="315" src="https://www.youtube.com/embed/wwWtuDcqj18" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

@ -9,9 +9,9 @@ keywords: backlogs, scrum
# Working with Backlogs
The starting point for effective work in Scrum teams is a well-maintained and prioritized product backlog as well as the creation of sprint backlogs. In OpenProject, you can easily record and specify requirements represented by user stories. Moreover, you can respond to inquiries and sort them by priority for implementation.
The starting point for effective work in Scrum teams is a well-maintained and prioritized product backlog as well as the creation of sprint backlogs. In OpenProject, you can easily record and specify requirements represented by user stories. Moreover, you can respond to inquiries and sort them by priority for implementation.
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.
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.
| Feature | Documentation for |
| --------------------------------------------------- | ------------------------------------------------------------ |
| [Create a new backlog](#create-a-new-backlog) | How to create a new product backlog or sprint? |
@ -73,6 +73,12 @@ You can prioritize different work packages within the product backlog using drag
In a sprint, you can directly document necessary effort as story points. The overall effort for a sprint is automatically calculated, whereby the sum of story points is displayed in the top row.
<div class="glossary">
**Story points** are definded as numbers assigned to a work package used to estimate (relatively) the size of the work.
</div>
![User-guide-backlogs-estimate-story-points](User-guide-backlogs-estimate-story-points.png)
You can easily edit story points directly from the backlogs view. In order to do so, simply click in the line of the work package you want to edit, and make the desired changes.
@ -97,7 +103,7 @@ Moreover, you can adjust the start and end date of a backlog in the backlogs vie
## Burndown chart
**Burndown charts** are a helpful tool to visualize a sprint’s progress. With OpenProject, you can generate sprint and task burndown charts automatically. As a precondition, the sprint’s start and end date must be entered in the title and the information on story points is well maintained.
**Burndown charts** are a helpful tool to visualize a sprint’s progress. With OpenProject, you can generate sprint and task burndown charts automatically. As a precondition, the sprint’s start and end date must be entered in the title and the information on story points is well maintained.
![User-guide-backlogs-burndown-chart](User-guide-backlogs-burndown-chart.png)

@ -11,6 +11,8 @@ keywords: forum
In the forum in OpenProject you can discuss topics in a project with the team: post questions, comment on it and document answers.
<div class="glossary"> **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>
| Feature | Documentation for |
| -------------------------------------------------------- | ------------------------------------------------------------ |
| [Open a forum](#open-a-forum) | How to open an existing forum? |

@ -11,6 +11,8 @@ keywords: meetings
Meetings in OpenProject allow you to manage and document your project meetings at one central place, prepare a meeting agenda together with your team and document and share meeting minutes with your meeting attendees at one central place.
<div class="glossary">**Meetings** is defined as a module that allows the organization of meetings. The module has to be activated in the project settings in order to be displayed in the side navigation.</div>
| Feature | Documentation for |
| ------------------------------------------------------------ | ------------------------------------------- |
| [Meetings in OpenProject](#meetings-in-OpenProject) | How to open meetings in OpenProject? |

@ -32,6 +32,8 @@ To remove members from a project, [select the project](../projects/#select-a-pro
Members will have different roles with different permissions in a project. To find out how to [configure roles and permissions](../../system-admin-guide/#roles-permissions).
<div class="glossary">A **role** is defined as a set of permissions defined by a unique name. Project members are assigned to a project by specifying a user's or group's name and the role(s) the user should assume in the project.</div>
## Groups
Members can be added to groups. Find out how to [create and manage groups](../../system-admin-guide/#groups) in OpenProject.

@ -11,6 +11,8 @@ keywords: news
On the news page, you can see the latest news in a project in reverse chronological order. News communicate general topics to all team members.
<div class="glossary"> **News** are defined as a module that allows the publication and use of news entries.</div>
They can be displayed on the main project overview page.
| Feature | Documentation for |

@ -10,6 +10,8 @@ keywords: activities for time tracking
You can configure Activities for time tracking in the System *Administration* -> *Enumerations*. You can activate or deactivate time tracking acitivites per project.
<div class="glossary">**Time tracking** is defined as a module which allows users to log time on work packages. Once the time tracking module is activated, time can be logged via the action menu of a work package.</div>
Navigate to the -> Project settings -> *Activites (time tracking)*.
Select the activites which you want to activate for time tracking in your project.

@ -10,6 +10,8 @@ keywords: custom fields
**Custom fields can be activated or deactivated in a project**. Open the respective project and go to -> *project settings* -> *custom fields*.
<div class="glossary">**Custom fields** are defined as additional value fields which can be added to existing value fields. The different sections that can use custom fields are work packages, spent time, projects, versions, users, groups, activities (time tracking), and work package priorities.</div>
1. Manage the custom field by clicking on the name. You have to be a System Administrator in order to [manage custom fields in the system administration](../../syste-admin-guide/custom-fields).
2. **Select if the custom fields shall be enabled in the project**. If enabled globally in the custom fields settings, it will automatically be displayed in all projects.
3. View the work package types for which the custom field is already enabled. Only for the displayed types the custom field will be active.

@ -8,6 +8,8 @@ keywords: repository
---
# Manage a repository
<div class="glossary">**Repository** is definded as a document management system that allows users to manage files and folders via different version control system (SVN or Git).</div>
You can integrate a SVN or GIT repository in a project in OpenProject and access it directly in the project via the module Repositories.
**Note**: Repositories can only be integrated for Community Edition and Enterprise Edition (self hosted) versions.

@ -8,6 +8,8 @@ keywords: svn, git, repository management
---
# Repository for source code control
**Repository** is defined as a document management system that allows users to manage files and folders via different version control system (SVN or Git).
Coming soon!
| Feature | Documentation for |

@ -9,6 +9,8 @@ keywords: roadmap, release planning
# Product roadmap release planning
<div class="glossary">**Roadmap** is defined as an overview page displaying the versions sorted alphabetically and the work packages assigned to them. The roadmap is displayed in the project navigation when the work package module is activated and a version has been created (project settings).</div>
Plan and manage your product roadmap in OpenProject. Visualize, and communicate your product roadmap. Share your product roadmap with your stakeholders, get feedback about your ideas and break it down into a detailed release plan.
In the roadmap, you can see all work packages and their status listed by versions at a glance.

@ -12,7 +12,6 @@ keywords: cost tracking
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.
<div class="alert alert-info" role="alert">
**Note**: When using the cost tracking functionality, the **Cost reports** module needs to be activated in the [project menu](../../projects/).
</div>
@ -33,13 +32,23 @@ To track unit costs to a work package select the **Log unit costs** option from
A new form is opened, where you can log unit costs. You can edit the following information:
1. **Work package ID**. By default, the work package ID of the work package where you selected *Log unit costs* option is shown. You can change this number, in which case the unit costs will be logged for the respective work package.
2. The **date**, for which the unit costs are logged.
3. You can select a **user** (project member) from the drop down menu for whom you log the unit costs.
4. The **cost type** field offers a range of pre-defined cost types which can be configured in the Administration. The units and respective costs per unit category are defined for every cost type separately. Please note that you need certain privileges to be able to create new cost types and define costs for specific units.
<div class="glossary">**Cost Types** are defined as types of costs that can be defined by system admins (e.g. Scrum development).</div>
5. You can enter the number of **units** to be logged.
6. The **costs** for the entered units will be automatically calculated after you have entered the number of units. You can manually change the sum of the calculated costs, if e.g. a discount is offered or a special agreement was reached. To adapt the sum manually click on the **pen icon** to the left of the sum.
7. In the **comment** field you can enter more details to describe the logged costs.
8. Do not forget to **Save** your time log.
9. ![Cost-tracking-log-costs-details](Cost-tracking-log-costs-details.png)
The **spent unit costs** as well as the total amount of **overall costs** are displayed on the work packages details view.

@ -27,6 +27,8 @@ You can easily report spent time and costs in OpenProject and filter, group and
To open the time and costs reports in OpenProject, navigate to the **Cost reports** module in the project navigation.
<div class="glossary">**Cost Reports** is defined as a plugin to filter cost reports on individual or multiple users across individual or multiple projects. The plugin has to be activated as a module in the project settings to be displayed in the side navigation.</div>
![Time-costs-reports](Time-costs-reports.png)
## Change time and costs reports

@ -11,6 +11,8 @@ keywords: wiki
In a project wiki you can collaboratively create and document information with your team, such as project documentation, specifications, guidelines, or any other important project information.
<div class="glossary">**Wiki** is defined as a module that allows to use textile-based wiki pages. In order to use the wiki module, it has to be activated in the project settings. </div>
| Feature | Documentation for |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
| [General wiki information](#general-wiki-information) | How to format a wiki page. |

@ -15,6 +15,8 @@ keywords: work packages
Work packages have a **type**, an **ID**, a **subject** and may have various additional attributes, such as **status**, **assignee**, **priority**, **due date**.
<div class="glossary">**Work package ID** is defined as a unique integer assigned to a newly created work package. Work package IDs cannot be changed and are numbered across all projects of an OpenProject instance (therefore, the numbering within a project may not be sequential).</div>
<div class="glossary">
**Types** are the different items a work package can represent, such as task, feature, bug, phase, milestone. The work package types can be configured in the system administration.
</div>

@ -5,7 +5,7 @@
(onSaved)="signalModifiedEntry($event)">
<div class="attributes-map">
<div class="attributes-map--key" [textContent]="text.attributes.spentOn"></div>
<div class="attributes-map--key -required" [textContent]="text.attributes.spentOn"></div>
<div class="attributes-map--value">
<editable-attribute-field [resource]="entry"
[wrapperClasses]="'-tiny'"
@ -13,7 +13,7 @@
</editable-attribute-field>
</div>
<div class="attributes-map--key" [textContent]="text.attributes.hours"></div>
<div class="attributes-map--key -required" [textContent]="text.attributes.hours"></div>
<div class="attributes-map--value">
<editable-attribute-field [resource]="entry"
[wrapperClasses]="'-tiny'"
@ -21,14 +21,14 @@
</editable-attribute-field>
</div>
<div class="attributes-map--key" [textContent]="text.attributes.workPackage"></div>
<div class="attributes-map--key -required" [textContent]="text.attributes.workPackage"></div>
<div class="attributes-map--value">
<editable-attribute-field [resource]="entry"
[fieldName]="'workPackage'">
</editable-attribute-field>
</div>
<div class="attributes-map--key" [textContent]="text.attributes.activity"></div>
<div class="attributes-map--key -required" [textContent]="text.attributes.activity"></div>
<div class="attributes-map--value">
<editable-attribute-field *ngIf="workPackageSelected"
[resource]="entry"

@ -76,22 +76,22 @@ module OpenProject::CustomStyles
{
name: 'OpenProject Dark',
colors: {
'primary-color' => "#1A67A3",
'primary-color-dark' => "#175A8E",
'alternative-color' => "#138E1B",
'content-link-color' => "#175A8E",
'header-bg-color' => "#031D2F",
'header-item-bg-hover-color' => "#0F3A5A",
'header-item-font-color' => "#DFDFDF",
'header-item-font-hover-color' => "#DFDFDF",
'primary-color' => "#3270DB",
'primary-color-dark' => "#163473",
'alternative-color' => "#349939",
'content-link-color' => "#275BB5",
'header-bg-color' => "#05002C",
'header-item-bg-hover-color' => "#163473",
'header-item-font-color' => "#FFFFFF",
'header-item-font-hover-color' => "#FFFFFF",
'header-border-bottom-color' => "",
'main-menu-bg-color' => "#2F3131",
'main-menu-bg-selected-background' => "#143E5F",
'main-menu-bg-hover-background' => "#0D2B42",
'main-menu-font-color' => "#DFDFDF",
'main-menu-hover-font-color' => "#DFDFDF",
'main-menu-selected-font-color' => "#DFDFDF",
'main-menu-border-color' => "#000000"
'main-menu-bg-color' => "#0E2045",
'main-menu-bg-selected-background' => "#3270DB",
'main-menu-bg-hover-background' => "#163473",
'main-menu-font-color' => "#FFFFFF",
'main-menu-hover-font-color' => "#FFFFFF",
'main-menu-selected-font-color' => "#FFFFFF",
'main-menu-border-color' => "#EAEAEA"
}
}
].freeze

@ -92,7 +92,7 @@ el:
backlogs_product_backlog_is_empty: "Το backlog του προϊόντος είναι άδειο"
backlogs_product_backlog_unsized: "Η κορυφή του backlog προϊόντων έχει μη εκτιμημένα μεγέθη ιστοριών"
backlogs_sizing_inconsistent: "Τα μεγέθη ιστοριών ποικίλλουν συγκριτικά με τις εκτιμήσεις τους"
backlogs_sprint_notes_missing: "Closed sprints without retrospective/review notes"
backlogs_sprint_notes_missing: "Κλειστά sprints χωρίς αναδρομικές/αναθεωρημένες σημειώσεις"
backlogs_sprint_unestimated: "Κλειστά ή ενεργά sprints με μη εκτιμημένες ιστορίες"
backlogs_sprint_unsized: "Το έργο έχει ιστορίες σε sprints που είναι ενεργά ή που έκλεισαν πρόσφατα οι οποίες δεν έχουν εκτιμημένο μέγεθος"
backlogs_sprints: "Sprints"

@ -32,7 +32,7 @@ el:
no_permission_to_add_members: 'Δεν έχετε επαρκή δικαιώματα για να τους προσθέσετε ως μέλη αυτού του έργου.'
contact_project_admin: 'Επικοινωνήστε με τον διαχειριστή έργου σας για να τους προσθέσετε ως μέλη και να επανεκκινήσετε την εισαγωγή.'
continue_anyways: 'Θέλετε να προχωρήσετε και να ολοκληρώσετε την εισαγωγή ανεξαρτήτως;'
description: "Provide a BCF-XML v2.1 file to import into this project. You can examine its contents before performing the import."
description: "Προμηθεύστε ένα αρχείο BCF-XML v2.1 για να εισάγετε σε αυτό το έργο. Μπορείτε να ελέγξετε τα περιεχόμενα του πριν εκτελέσετε την εισαγωγή."
invalid_types_found: 'Βρέθηκαν μη έγκυρα ονόματα τύπου θέματος'
invalid_statuses_found: 'Βρέθηκαν μη έγκυρα ονόματα κατάστασης'
invalid_priorities_found: 'Βρέθηκαν μη έγκυρα ονόματα προτεραιότητας'
@ -52,7 +52,7 @@ el:
replace_with_system_user: 'Αντικατάσταση τους με τον χρήστη "Συστήματος"'
import_as_system_user: 'Εισαγωγή ως χρήστης "Συστήματος".'
what_to_do: "Τι θέλετε να κάνετε;"
work_package_has_newer_changes: "Outdated! This topic was not updated as the latest changes on the server were newer than the \"ModifiedDate\" of the imported topic. However, comments to the topic were imported."
work_package_has_newer_changes: "Απαρχαιωμένο! Αυτό το θέμα δεν ενημερώθηκε, καθώς οι τελευταίες αλλαγές στον διακομιστή ήταν νεότερες από την \"ModifiedDate\" του εισαγόμενου θέματος. Ωστόσο, εισήχθησαν σχόλια στο θέμα."
export:
format:
bcf: "BCF-XML"

@ -0,0 +1,42 @@
#-- encoding: UTF-8
#-- copyright
# OpenProject is an open source project management software.
# Copyright (C) 2012-2020 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-2017 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 docs/COPYRIGHT.rdoc for more details.
#++
module BimSeeder
module BasicData
class CustomStyleSeeder < Seeder
def seed_data!
CustomStyle.create data
end
def data
{ theme: 'OpenProject Dark' }
end
end
end
end

@ -36,6 +36,7 @@ module BimSeeder
::BimSeeder::BasicData::ActivitySeeder,
::BasicData::ColorSeeder,
::BasicData::ColorSchemeSeeder,
::BimSeeder::BasicData::CustomStyleSeeder,
::BimSeeder::BasicData::WorkflowSeeder,
::BimSeeder::BasicData::PrioritySeeder,
::BasicData::SettingSeeder

@ -38,7 +38,7 @@ el:
title: 'Υποέργα'
no_results: 'Δεν υπάρχουν υποέργα.'
time_entries_current_user:
title: 'My spent time'
title: 'Ο δικός μου χρόνος που δαπανήθηκε'
time_entries_list:
title: 'Χρόνος που δαπανήθηκε (τις τελευταίες 7 ημέρες)'
no_results: 'Δεν υπάρχουν καταχωρήσεις χρόνου για τις τελευταίες 7 ημέρες.'

@ -38,7 +38,7 @@ tr:
title: 'Alt Projeler'
no_results: 'Alt proje yok.'
time_entries_current_user:
title: 'My spent time'
title: 'Geçirdiğim zaman'
time_entries_list:
title: 'Harcanan zaman (son 7 gün)'
no_results: 'Son 7 günde zaman girişi yok.'

@ -91,6 +91,6 @@ class OpenProject::XlsExport::XlsViews::CostEntryTable < OpenProject::XlsExport:
end
def cost_entry_attributes
%i[spent_on user_id activity_id issue_id comments project_id]
%i[spent_on user_id activity_id work_package_id comments project_id]
end
end

Loading…
Cancel
Save