diff --git a/.rubocop.yml b/.rubocop.yml index 364b0382f..fa5d4d57e 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -5,7 +5,7 @@ Metrics/MethodLength: Metrics/CyclomaticComplexity: Max: 13 Metrics/PerceivedComplexity: - Max: 9 + Max: 11 Metrics/AbcSize: Max: 45 Metrics/ClassLength: diff --git a/CHANGELOG.md b/CHANGELOG.md index 1a3e3b895..d53066057 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,14 @@ # Changelog Fab-manager +## v4.3.1 2020 March 04 + +- Updated user's manual for v4.3 (fr) +- Display user's manual when help is asked, if no tour is available +- Change style and pluralize the text of the slot division alert in new availability assistant +- Fix a bug: in feature tours, next and previous arrows may be broken on some systems +- Fix a bug: in the user's menu, two links to the personal wallet +- Fix a bug: spaces item is not at the correct position in the admin navigation menu + ## v4.3.0 2020 March 04 - Ability to configure reservation slot restricted for plan subscribers @@ -19,6 +28,7 @@ - Administrators can to book machine/space/training slots, until 1 month in the past - Filter members by non-validated emails or by inactive for 3 years - Ability to customize the title of the link to the about page +- Feature tours for administrators that provides contextual help - Automatic version check with security alerts - Public endpoint to check the system health - Configuration of phone number in members registration forms: can be required or optional, depending on `PHONE_REQUIRED` configuration diff --git a/app/assets/javascripts/controllers/application.js.erb b/app/assets/javascripts/controllers/application.js.erb index b5d2019b7..b409038b1 100644 --- a/app/assets/javascripts/controllers/application.js.erb +++ b/app/assets/javascripts/controllers/application.js.erb @@ -344,6 +344,24 @@ Application.Controllers.controller('ApplicationController', ['$rootScope', '$sco $scope.isAuthenticated = Auth.isAuthenticated; $scope.isAuthorized = AuthService.isAuthorized; $rootScope.login = $scope.login; + + // handle F1 key to trigger help + window.addEventListener('keydown', function(e) { + if (e.key === 'F1') { + if ($rootScope.currentUser.role !== 'admin') return; + + e.preventDefault(); + // we wait a little bit and then, check if a tour has started (by checking for a tour popover). + // if not, we consider that we are on a page that does not provides a tour so we fallback to the default behavior + // -> opening the user's manual + setTimeout(function() { + const tourPopover = document.querySelector('.ui-tour-popup'); + if (!tourPopover || (tourPopover.offsetTop === 0 && tourPopover.offsetTop === 0)) { + window.open('https://github.com/sleede/fab-manager/raw/master/doc/fr/guide_utilisation_fab_manager_v4.3.pdf', '_blank'); + } + }, 300); + } + }); }; /** diff --git a/app/assets/javascripts/controllers/main_nav.js b/app/assets/javascripts/controllers/main_nav.js index 8335a3634..fe9adada4 100644 --- a/app/assets/javascripts/controllers/main_nav.js +++ b/app/assets/javascripts/controllers/main_nav.js @@ -140,7 +140,7 @@ Application.Controllers.controller('MainNavController', ['$scope', function ($sc $scope.adminNavLinks = adminNavLinks; if (!Fablab.withoutSpaces) { - return $scope.adminNavLinks.splice(4, 0, { + return $scope.adminNavLinks.splice(3, 0, { state: 'app.public.spaces_list', linkText: 'app.public.common.manage_the_spaces', linkIcon: 'rocket' diff --git a/app/assets/templates/admin/calendar/eventModal.html.erb b/app/assets/templates/admin/calendar/eventModal.html.erb index 10c3cdfc5..d5fd10571 100644 --- a/app/assets/templates/admin/calendar/eventModal.html.erb +++ b/app/assets/templates/admin/calendar/eventModal.html.erb @@ -202,7 +202,10 @@
If you want to restart this contextual help, press F1 at any time or click on [? Help] from the user's menu.
If you need additional help, you can check the user guide (only in French for now).
The Fab-manager's team also provides personalized support (help with getting started, help with installation, customization, etc.), contact-us for more info.
" + content: "If you want to restart this contextual help, press F1 at any time or click on [? Help] from the user's menu.
If you need additional help, you can check the user guide (only in French for now).
The Fab-manager's team also provides personalized support (help with getting started, help with installation, customization, etc.), contact-us for more info.
" trainings: welcome: title: "Trainings" diff --git a/config/locales/app.admin.es.yml b/config/locales/app.admin.es.yml index deb5ebe79..eece2f1fb 100644 --- a/config/locales/app.admin.es.yml +++ b/config/locales/app.admin.es.yml @@ -67,7 +67,7 @@ es: select_nb_period: "Please select a number of periods for the recurrence" select_end_date: "Please select the date of the last occurrence" about_to_create: "Está a punto de crear los horarios siguientes: {TYPE, select, machines{machine} training{training} space{space} other{other}} {NUMBER, plural, one{slot} other{slots}}:" - divided_in_slots: "This slot will be open for booking in {DURATION}-minutes increments. Contact your system administrator to change this setting." + divided_in_slots: "{COUNT, plural, =1{This slot} other{These slots}} will be open for booking in {DURATION}-minutes increments. Contact your system administrator to change this setting." reservable: "Reservable(s):" labels: "Etiqueta(s):" none: "Ninguna" @@ -1075,7 +1075,7 @@ es: tour: conclusion: title: "Thank you for your attention" - content: "If you want to restart this contextual help, press F1 at any time or click on [? Help] from the user's menu.
If you need additional help, you can check the user guide (only in French for now).
The Fab-manager's team also provides personalized support (help with getting started, help with installation, customization, etc.), contact-us for more info.
" + content: "If you want to restart this contextual help, press F1 at any time or click on [? Help] from the user's menu.
If you need additional help, you can check the user guide (only in French for now).
The Fab-manager's team also provides personalized support (help with getting started, help with installation, customization, etc.), contact-us for more info.
" trainings: welcome: title: "Trainings" diff --git a/config/locales/app.admin.fr.yml b/config/locales/app.admin.fr.yml index 4d14025f9..7de812b7e 100644 --- a/config/locales/app.admin.fr.yml +++ b/config/locales/app.admin.fr.yml @@ -67,7 +67,7 @@ fr: select_nb_period: "Veuillez choisir un nombre de périodes pour la récurrence" select_end_date: "Veuillez choisir la date de dernière occurrence" about_to_create: "Vous vous apprêtez à créer {NUMBER, plural, one{le créneau} other{les créneaux}} {TYPE, select, machines{machine} training{formation} space{espace} other{autre}} suivant :" - divided_in_slots: "Ce créneau sera proposé à la réservation par tranches de {DURATION} minutes. Contactez votre administrateur système pour modifier ce paramètre." + divided_in_slots: "{COUNT, plural, =1{Ce créneau sera proposé} other{Ces créneaux seront proposés}} à la réservation par tranches de {DURATION} minutes. Contactez votre administrateur système pour modifier ce paramètre." reservable: "Réservable(s) :" labels: "Étiquette(s) :" none: "Aucune" @@ -1074,7 +1074,7 @@ fr: tour: conclusion: title: "Merci de votre attention" - content: "Si vous souhaitez relancer cette aide contextuelle, appuyez sur F1 à n'importe quel moment ou cliquez sur [? Aide] depuis le menu utilisateur.
Si vous avez besoin d'aide supplémentaire, vous pouvez consulter le guide d'utilisation disponible en Français.
L'équipe de Fab-manager propose également du support personnalisé (aide à la prise en main, aide à l'installation, personnalisation, etc.), contactez-nous pour plus d'informations.
" + content: "Si vous souhaitez relancer cette aide contextuelle, appuyez sur F1 à n'importe quel moment ou cliquez sur [? Aide] depuis le menu utilisateur.
Si vous avez besoin d'aide supplémentaire, vous pouvez consulter le guide d'utilisation disponible en Français.
L'équipe de Fab-manager propose également du support personnalisé (aide à la prise en main, aide à l'installation, personnalisation, etc.), contactez-nous pour plus d'informations.
" trainings: welcome: title: "Formations" diff --git a/config/locales/app.admin.pt.yml b/config/locales/app.admin.pt.yml index b7a56c229..7aa637e4a 100755 --- a/config/locales/app.admin.pt.yml +++ b/config/locales/app.admin.pt.yml @@ -67,7 +67,7 @@ pt: select_nb_period: "Please select a number of periods for the recurrence" select_end_date: "Please select the date of the last occurrence" about_to_create: "You are about to create the following {TYPE, select, machines{machine} training{training} space{space} other{other}} {NUMBER, plural, one{slot} other{slots}}:" - divided_in_slots: "This slot will be open for booking in {DURATION}-minutes increments. Contact your system administrator to change this setting." + divided_in_slots: "{COUNT, plural, =1{This slot} other{These slots}} will be open for booking in {DURATION}-minutes increments. Contact your system administrator to change this setting." reservable: "Reservable(s) :" labels: "Etiqueta(s):" none: "Nenhuma" @@ -1075,7 +1075,7 @@ pt: tour: conclusion: title: "Thank you for your attention" - content: "If you want to restart this contextual help, press F1 at any time or click on [? Help] from the user's menu.
If you need additional help, you can check the user guide (only in French for now).
The Fab-manager's team also provides personalized support (help with getting started, help with installation, customization, etc.), contact-us for more info.
" + content: "If you want to restart this contextual help, press F1 at any time or click on [? Help] from the user's menu.
If you need additional help, you can check the user guide (only in French for now).
The Fab-manager's team also provides personalized support (help with getting started, help with installation, customization, etc.), contact-us for more info.
" trainings: welcome: title: "Trainings" diff --git a/config/locales/app.public.en.yml b/config/locales/app.public.en.yml index a88539dc9..0c4881928 100644 --- a/config/locales/app.public.en.yml +++ b/config/locales/app.public.en.yml @@ -387,7 +387,7 @@ en: tour: conclusion: title: "Thank you for your attention" - content: "If you want to restart this contextual help, press F1 at any time or click on [? Help] from the user's menu.
If you need additional help, you can check the user guide (only in French for now).
The Fab-manager's team also provides personalized support (help with getting started, help with installation, customization, etc.), contact-us for more info.
" + content: "If you want to restart this contextual help, press F1 at any time or click on [? Help] from the user's menu.
If you need additional help, you can check the user guide (only in French for now).
The Fab-manager's team also provides personalized support (help with getting started, help with installation, customization, etc.), contact-us for more info.
" welcome: welcome: title: "Welcome to Fab-manager" diff --git a/config/locales/app.public.es.yml b/config/locales/app.public.es.yml index bac19cf25..3974f7260 100644 --- a/config/locales/app.public.es.yml +++ b/config/locales/app.public.es.yml @@ -387,7 +387,7 @@ es: tour: conclusion: title: "Thank you for your attention" - content: "If you want to restart this contextual help, press F1 at any time or click on [? Help] from the user's menu.
If you need additional help, you can check the user guide (only in French for now).
The Fab-manager's team also provides personalized support (help with getting started, help with installation, customization, etc.), contact-us for more info.
" + content: "If you want to restart this contextual help, press F1 at any time or click on [? Help] from the user's menu.
If you need additional help, you can check the user guide (only in French for now).
The Fab-manager's team also provides personalized support (help with getting started, help with installation, customization, etc.), contact-us for more info.
" welcome: welcome: title: "Welcome to Fab-manager" diff --git a/config/locales/app.public.fr.yml b/config/locales/app.public.fr.yml index 04b3499ad..1e31566b4 100644 --- a/config/locales/app.public.fr.yml +++ b/config/locales/app.public.fr.yml @@ -387,7 +387,7 @@ fr: tour: conclusion: title: "Merci de votre attention" - content: "Si vous souhaitez relancer cette aide contextuelle, appuyez sur F1 à n'importe quel moment ou cliquez sur [? Aide] depuis le menu utilisateur.
Si vous avez besoin d'aide supplémentaire, vous pouvez consulter le guide d'utilisation disponible en Français.
L'équipe de Fab-manager propose également du support personnalisé (aide à la prise en main, aide à l'installation, personnalisation, etc.), contactez-nous pour plus d'informations.
" + content: "Si vous souhaitez relancer cette aide contextuelle, appuyez sur F1 à n'importe quel moment ou cliquez sur [? Aide] depuis le menu utilisateur.
Si vous avez besoin d'aide supplémentaire, vous pouvez consulter le guide d'utilisation disponible en Français.
L'équipe de Fab-manager propose également du support personnalisé (aide à la prise en main, aide à l'installation, personnalisation, etc.), contactez-nous pour plus d'informations.
" welcome: welcome: title: "Bienvenue dans Fab-manager" diff --git a/config/locales/app.public.pt.yml b/config/locales/app.public.pt.yml index b2c93ee12..23efeed25 100755 --- a/config/locales/app.public.pt.yml +++ b/config/locales/app.public.pt.yml @@ -387,7 +387,7 @@ pt: tour: conclusion: title: "Thank you for your attention" - content: "If you want to restart this contextual help, press F1 at any time or click on [? Help] from the user's menu.
If you need additional help, you can check the user guide (only in French for now).
The Fab-manager's team also provides personalized support (help with getting started, help with installation, customization, etc.), contact-us for more info.
" + content: "If you want to restart this contextual help, press F1 at any time or click on [? Help] from the user's menu.
If you need additional help, you can check the user guide (only in French for now).
The Fab-manager's team also provides personalized support (help with getting started, help with installation, customization, etc.), contact-us for more info.
" welcome: welcome: title: "Welcome to Fab-manager" diff --git a/doc/fr/guide_utilisation_fab_manager_v4.2.pdf b/doc/fr/guide_utilisation_fab_manager_v4.3.pdf similarity index 81% rename from doc/fr/guide_utilisation_fab_manager_v4.2.pdf rename to doc/fr/guide_utilisation_fab_manager_v4.3.pdf index 3f6435c40..315759929 100644 Binary files a/doc/fr/guide_utilisation_fab_manager_v4.2.pdf and b/doc/fr/guide_utilisation_fab_manager_v4.3.pdf differ diff --git a/package.json b/package.json index 90af721eb..d1b258ad1 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "fab-manager", - "version": "4.3.0", + "version": "4.3.1", "description": "Fab-manager is the FabLab management solution. It provides a comprehensive, web-based, open-source tool to simplify your administrative tasks and your marker's projects.", "keywords": [ "fablab",