mirror of
https://github.com/LaCasemate/fab-manager.git
synced 2024-11-29 10:24:20 +01:00
Merge branch 'dev' into payzen
This commit is contained in:
commit
63c81b82c1
12
CHANGELOG.md
12
CHANGELOG.md
@ -5,13 +5,23 @@
|
||||
- [TODO DEPLOY] `rails fablab:stripe:set_gateway`
|
||||
- [TODO DEPLOY] `rails fablab:maintenance:rebuild_stylesheet`
|
||||
|
||||
## v4.7.7 (pending)
|
||||
## v4.7.9
|
||||
- Updated dependency to OpenLab
|
||||
- Prevent the worker from crashing if OpenLab is not reachable in dev
|
||||
- Fix a bug: the notification sent to the project author when a collaborator has confirmed his participation is not sent
|
||||
|
||||
## v4.7.8 2021 April 02
|
||||
- Updated mimemagic to 0.3.10 to fix [a build issue](https://github.com/mimemagicrb/mimemagic/issues/139)
|
||||
|
||||
## v4.7.7 2021 April 02
|
||||
- Enforced validation on required input fields
|
||||
- Updated babeljs and its dependencies
|
||||
- Updated german translations (thanks to [@Piapat](https://crowdin.com/profile/piapat))
|
||||
- Fix a bug: the view is not refreshed when deleting a recurring slot
|
||||
- Fix a bug: unable to add a new authorized file type for project's CAD files
|
||||
- Fix a bug: unable to update a coupon
|
||||
- Fix a bug: create a training availability with calendar in month view result in wrong dates
|
||||
- Fix a security issue: updated y18n to 4.0.1 to fix [CVE-2020-7774](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-7774)
|
||||
|
||||
## v4.7.6 2021 March 24
|
||||
- Ability to disable the trainings module
|
||||
|
10
Gemfile.lock
10
Gemfile.lock
@ -154,7 +154,7 @@ GEM
|
||||
hashery (2.1.2)
|
||||
hashie (4.1.0)
|
||||
htmlentities (4.3.4)
|
||||
httparty (0.18.0)
|
||||
httparty (0.18.1)
|
||||
mime-types (~> 3.0)
|
||||
multi_xml (>= 0.5.2)
|
||||
i18n (1.8.9)
|
||||
@ -200,8 +200,10 @@ GEM
|
||||
method_source (1.0.0)
|
||||
mime-types (3.3.1)
|
||||
mime-types-data (~> 3.2015)
|
||||
mime-types-data (3.2020.0512)
|
||||
mimemagic (0.3.5)
|
||||
mime-types-data (3.2021.0225)
|
||||
mimemagic (0.3.10)
|
||||
nokogiri (~> 1)
|
||||
rake
|
||||
mini_magick (4.10.1)
|
||||
mini_mime (1.0.2)
|
||||
mini_portile2 (2.5.0)
|
||||
@ -239,7 +241,7 @@ GEM
|
||||
omniauth-rails_csrf_protection (0.1.2)
|
||||
actionpack (>= 4.2)
|
||||
omniauth (>= 1.3.1)
|
||||
openlab_ruby (0.0.4)
|
||||
openlab_ruby (0.0.5)
|
||||
httparty (~> 0.13)
|
||||
orm_adapter (0.5.0)
|
||||
parallel (1.19.1)
|
||||
|
@ -29,7 +29,7 @@ class ProjectUser < ApplicationRecord
|
||||
|
||||
def notify_project_author_when_collaborator_valid
|
||||
NotificationCenter.call type: 'notify_project_author_when_collaborator_valid',
|
||||
receiver: project.author,
|
||||
receiver: project.author.user,
|
||||
attached_object: self
|
||||
end
|
||||
end
|
||||
|
@ -28,5 +28,7 @@ class OpenlabWorker
|
||||
end
|
||||
|
||||
logger.debug ['Openlab sync', 'RESPONSE ERROR', response.inspect] unless response.success?
|
||||
rescue Errno::ECONNREFUSED => e
|
||||
logger.warn "Unable to connect to OpenProject, maybe the dev instance is not running: #{e}" if Rails.env.development?
|
||||
end
|
||||
end
|
||||
|
@ -73,10 +73,13 @@ de:
|
||||
labels: "Label(s):"
|
||||
none: "Keine"
|
||||
slot_successfully_deleted: "Der Slot {START} - {END} wurde erfolgreich gelöscht"
|
||||
slots_deleted: "Der Slot beginnend mit {START}, und {COUNT, plural, =1{one other} ein weiterer Slot{{COUNT} weitere Slots}}} wurden gelöscht"
|
||||
slots_deleted: "Der Slot beginnend mit {START}, und {COUNT, plural, =1{ein weiterer Slot} other{{COUNT} weitere Slots}} wurden gelöscht"
|
||||
unable_to_delete_the_slot: "Konnte den Slot {START} - {END} nicht löschen, wahrscheinlich weil er bereits von einem Mitglied reserviert ist"
|
||||
slots_not_deleted: "Von {TOTAL} Slots {COUNT, plural, one {} =1{wurde einer wurde nicht gelöscht} other{wurden {COUNT} nicht gelöscht}}. Möglicherweise {COUNT, plural, =1{ist er} other{sind sie}} bereits reserviert."
|
||||
you_should_select_at_least_a_machine: "Sie sollten mindestens eine Maschine auf diesem Slot auswählen."
|
||||
inconsistent_times: "Fehler: das Ende der Verfügbarkeit liegt vor dem Beginn."
|
||||
min_one_slot: "The availability must be split in one slot at least."
|
||||
min_slot_duration: "You must specify a valid duration for the slots."
|
||||
export_is_running_you_ll_be_notified_when_its_ready: "Export wird ausgeführt. Sie werden nach Fertigstellung benachrichtigt."
|
||||
actions: "Aktionen"
|
||||
block_reservations: "Reservierungen blockieren"
|
||||
@ -346,7 +349,7 @@ de:
|
||||
confirmation_required: "Bestätigung erforderlich"
|
||||
do_you_really_want_to_delete_this_coupon: "Möchten Sie diesen Gutschein wirklich löschen?"
|
||||
coupon_was_successfully_deleted: "Gutschein wurde erfolgreich gelöscht."
|
||||
unable_to_delete_the_specified_coupon_already_in_use: "Unable to delete the specified coupon: it is already used with some invoices and/or some payment schedules."
|
||||
unable_to_delete_the_specified_coupon_already_in_use: "Der angegebene Gutschein konnte nicht gelöscht werden: Er wird bereits bei einigen Rechnungen und/oder Zahlungsplänen verwendet."
|
||||
unable_to_delete_the_specified_coupon_an_unexpected_error_occurred: "Der angegebene Gutschein konnte nicht gelöscht werden: Ein unerwarteter Fehler ist aufgetreten."
|
||||
send_a_coupon: "Gutschein senden"
|
||||
coupon: "Gutschein"
|
||||
@ -414,7 +417,7 @@ de:
|
||||
credit_note: "Gutschrift"
|
||||
display_more_invoices: "Weitere Rechnungen anzeigen..."
|
||||
no_invoices_for_now: "Momentan keine Rechnungen."
|
||||
payment_schedules_list: "Payment schedules"
|
||||
payment_schedules_list: "Zahlungspläne"
|
||||
invoicing_settings: "Rechnungs-Einstellungen"
|
||||
warning_invoices_disabled: "Warnung: Rechnungen sind nicht aktiviert. Es werden keine Rechnungen von Fab-Manager generiert. Trotzdem müssen Sie die unten angegebenen Informationen korrekt ausfüllen, insbesondere die Mehrwertsteuer."
|
||||
change_logo: "Logo ändern"
|
||||
@ -441,7 +444,7 @@ de:
|
||||
important_notes: "Wichtige Hinweise"
|
||||
address_and_legal_information: "Adresse und rechtliche Informationen"
|
||||
invoice_reference: "Rechnungsbezug"
|
||||
text: "text"
|
||||
text: "Text"
|
||||
year: "Jahr"
|
||||
month: "Monat"
|
||||
day: "Tag"
|
||||
@ -449,7 +452,7 @@ de:
|
||||
online_sales: "Online-Verkäufe"
|
||||
wallet: "Guthabenkonto"
|
||||
refund: "Erstattung"
|
||||
payment_schedule: "Payment schedule"
|
||||
payment_schedule: "Zahlungsplan"
|
||||
model: "Modell"
|
||||
documentation: "Dokumentation"
|
||||
2_digits_year: "Jahr (zwei Ziffern, z.B. 75)"
|
||||
@ -473,9 +476,9 @@ de:
|
||||
add_a_notice_regarding_refunds_only_if_the_invoice_is_concerned: "Fügen Sie nur dann eine Mitteilung zu Erstattungen hinzu, wenn die Rechnung betroffen ist."
|
||||
this_will_never_be_added_when_an_online_sales_notice_is_present: "Dies wird nie hinzugefügt, wenn eine Online-Verkaufsmitteilung vorhanden ist."
|
||||
eg_RA_will_add_A_to_the_refund_invoices: '(z.B. fügt R[/A] den Rückerstattungsrechnungen "/A" hinzu)'
|
||||
add_a_notice_regarding_payment_schedule: "Add a notice regarding the payment schedules, only for concerned documents."
|
||||
this_will_never_be_added_with_other_notices: "This will never be added when any other notice is present."
|
||||
eg_SE_to_schedules: '(eg. S[/E] will add "/E" to the payment schedules)'
|
||||
add_a_notice_regarding_payment_schedule: "Fügen Sie eine Mitteilung bezüglich der Zahlungspläne hinzu; nur für betreffende Dokumente."
|
||||
this_will_never_be_added_with_other_notices: "Dies wird nie hinzugefügt, wenn eine andere Mitteilung vorhanden ist."
|
||||
eg_SE_to_schedules: '(zB. fügt S[/E] "/E" zu den Zahlungsplänen hinzu)'
|
||||
code: "Code"
|
||||
enable_the_code: "Code aktivieren"
|
||||
enabled: "Aktiviert"
|
||||
@ -641,13 +644,13 @@ de:
|
||||
currency_alert_html: "<strong>Warnung</strong>: Die Währung kann nicht mehr geändert werden, nachdem die erste Online-Zahlung eingegangen ist. Bitte nehmen Sie diese Einstellung sorgfältig vor, bevor Sie Fab-Manager für Mitglieder öffnen."
|
||||
stripe_currency: "Stripe-Währung"
|
||||
payment_schedules:
|
||||
filter_schedules: "Filter schedules"
|
||||
no_payment_schedules: "No payment schedules to display"
|
||||
load_more: "Load more"
|
||||
filter_schedules: "Pläne filtern"
|
||||
no_payment_schedules: "Keine Zahlungspläne zum Anzeigen"
|
||||
load_more: "Mehr laden"
|
||||
document_filters:
|
||||
reference: "Reference"
|
||||
customer: "Customer"
|
||||
date: "Date"
|
||||
reference: "Referenz"
|
||||
customer: "Kunde"
|
||||
date: "Datum"
|
||||
#management of users, labels, groups, and so on
|
||||
members:
|
||||
users_management: "Benutzer-Verwaltung"
|
||||
@ -1073,7 +1076,7 @@ de:
|
||||
machines_sort_by: "Anzeigereihenfolge der Maschinen"
|
||||
fab_analytics: "Fab-Analytics"
|
||||
phone_required: "Telefonummer erforderlich"
|
||||
address_required: "address required"
|
||||
address_required: "Adresse erforderlich"
|
||||
tracking_id: "Tracking-ID"
|
||||
facebook_app_id: "Facebook App-ID"
|
||||
twitter_analytics: "Twitter Analytics-Konto"
|
||||
@ -1110,9 +1113,9 @@ de:
|
||||
phone: "Telefon"
|
||||
phone_is_required: "Telefonummer erforderlich"
|
||||
phone_required_info: "Sie können festlegen, ob die Telefonnummer erforderlich sein soll, um einen neuen Benutzer auf Fab-Manager zu registrieren."
|
||||
address: "Address"
|
||||
address: "Adresse"
|
||||
address_required_info_html: "You can define if the address should be required to register a new user on Fab-manager.<br/><strong>Please note</strong> that, depending on your country, the regulations may requires addresses for the invoices to be valid."
|
||||
address_is_required: "Address is required"
|
||||
address_is_required: "Adresse ist erforderlich"
|
||||
captcha: "Captcha"
|
||||
captcha_info_html: "Sie können einen Schutz gegen Roboter einrichten, um zu verhindern, dass diese Accounts erstellen. Dieser Schutz verwendet Google reCAPTCHA. Melden Sie sich für <a href='http://www.google.com/recaptcha/admin' target='_blank'>ein API-Schlüsselpaar</a> an, um reCaptcha zu verwenden."
|
||||
site_key: "Site-Schlüssel"
|
||||
|
@ -73,10 +73,13 @@ es:
|
||||
labels: "Etiqueta(s):"
|
||||
none: "Ninguna"
|
||||
slot_successfully_deleted: "La ranura {START} - {END} se ha eliminado correctamente"
|
||||
slots_deleted: "The slot of {START}, and {COUNT, plural, =1{one other} other{{COUNT} others}}}, have been deleted"
|
||||
slots_deleted: "The slot of {START}, and {COUNT, plural, =1{one other} other{{COUNT} others}}, have been deleted"
|
||||
unable_to_delete_the_slot: "No se puede eliminar la ranura {START} - {END}, probablemente porque ya está reservada por un miembror"
|
||||
slots_not_deleted: "On {TOTAL} slots, {COUNT, plural, =1{one was not deleted} other{{COUNT} were not deleted}}. Some reservations may exist on {COUNT, plural, =1{it} other{them}}."
|
||||
you_should_select_at_least_a_machine: "Debe seleccionar al menos una máquina en esta ranura."
|
||||
inconsistent_times: "Error: the end of the availability is before its beginning."
|
||||
min_one_slot: "The availability must be split in one slot at least."
|
||||
min_slot_duration: "You must specify a valid duration for the slots."
|
||||
export_is_running_you_ll_be_notified_when_its_ready: "La exportación se está ejecutando. Se le notificará cuando esté listo."
|
||||
actions: "Acciones"
|
||||
block_reservations: "Reservas de bloques"
|
||||
|
@ -73,10 +73,13 @@ pt:
|
||||
labels: "Etiqueta(s):"
|
||||
none: "Nenhuma"
|
||||
slot_successfully_deleted: "O slot {START} - {END} foi deletado com sucesso"
|
||||
slots_deleted: "O slot de {START}, e {COUNT, plural, =1{one other} other{{COUNT} outros}}}, foram excluídos"
|
||||
slots_deleted: "O slot de {START}, e {COUNT, plural, =1{one other} other{{COUNT} outros}}, foram excluídos"
|
||||
unable_to_delete_the_slot: "Não é possível deletar o slot {START} - {END}, provavelmente porque já foi reservado por um membro"
|
||||
slots_not_deleted: "Em {TOTAL} slots, {COUNT, plural, one {} =1{um não foi deletado} other{{COUNT} não foram deletados}}. Talvez existam algumas reservas {COUNT, plural, =1{nela} other{nelas}}."
|
||||
you_should_select_at_least_a_machine: "Você deveria selecionar a última máquina neste slot."
|
||||
inconsistent_times: "Error: the end of the availability is before its beginning."
|
||||
min_one_slot: "The availability must be split in one slot at least."
|
||||
min_slot_duration: "You must specify a valid duration for the slots."
|
||||
export_is_running_you_ll_be_notified_when_its_ready: "A Exportação está em andamento. Você será notificado quando terminar."
|
||||
actions: "Ações"
|
||||
block_reservations: "Impedir reservas"
|
||||
|
@ -73,10 +73,13 @@ zu:
|
||||
labels: "crwdns6795:0crwdne6795:0"
|
||||
none: "crwdns6797:0crwdne6797:0"
|
||||
slot_successfully_deleted: "crwdns6799:0{START}crwdnd6799:0{END}crwdne6799:0"
|
||||
slots_deleted: "crwdns6801:0{START}crwdnd6801:0{one other}crwdnd6801:0{COUNT}crwdne6801:0"
|
||||
slots_deleted: "crwdns21456:0START={START}crwdnd21456:0COUNT={COUNT}crwdnd21456:0COUNT={COUNT}crwdne21456:0"
|
||||
unable_to_delete_the_slot: "crwdns6803:0{START}crwdnd6803:0{END}crwdne6803:0"
|
||||
slots_not_deleted: "crwdns6805:0TOTAL={TOTAL}crwdnd6805:0COUNT={COUNT}crwdnd6805:0COUNT={COUNT}crwdnd6805:0COUNT={COUNT}crwdne6805:0"
|
||||
you_should_select_at_least_a_machine: "crwdns6807:0crwdne6807:0"
|
||||
inconsistent_times: "crwdns21458:0crwdne21458:0"
|
||||
min_one_slot: "crwdns21460:0crwdne21460:0"
|
||||
min_slot_duration: "crwdns21462:0crwdne21462:0"
|
||||
export_is_running_you_ll_be_notified_when_its_ready: "crwdns6809:0crwdne6809:0"
|
||||
actions: "crwdns6811:0crwdne6811:0"
|
||||
block_reservations: "crwdns6813:0crwdne6813:0"
|
||||
|
@ -350,7 +350,7 @@ setup_assets_and_databases()
|
||||
printf "\n\nWe will now create the default administrator of Fab-manager.\n"
|
||||
read_email
|
||||
PASSWORD=$(read_password)
|
||||
printf "\nOK. We will fulfill the database now...\n"
|
||||
printf "\nOK. We will fill the database now...\n"
|
||||
cd "$FABMANAGER_PATH" && docker-compose run --rm -e ADMIN_EMAIL="$EMAIL" -e ADMIN_PASSWORD="$PASSWORD" "$SERVICE" bundle exec rake db:seed # seed the database
|
||||
|
||||
# now build the assets
|
||||
|
Loading…
Reference in New Issue
Block a user